Bagaimana untuk memasang pakej PHP Komposer tanpa Komposer?
P粉278379495
P粉278379495 2023-08-22 12:37:12
0
2
487
<p>Saya cuba memasang API PHP Coinbase tetapi ia memerlukan Komposer: </p> <p>https://github.com/coinbase/coinbase-php</p> <p>Saya sedang mencari penyelesaian umum PHP (mungkin fungsi) yang membolehkan saya memasang pakej Komposer terus pada pelayan tanpa perlu menggunakan Komposer. </p> <p>Saya rasa pembangun Komposer berpendapat mereka sedang membantu orang ramai, tetapi sebenarnya terdapat beribu-ribu pembangun pemula yang tidak dapat mempelajari pembangunan web kerana "Penghalang Komposer". </p> <p>Jika terdapat penyelesaian yang fleksibel atau beberapa cara untuk memasang tanpa Komposer? apa patut saya buat? </p> <p><strong>Sila jangan balas komen sarkastik</strong>. Sesetengah orang tidak mahu menggunakan Komposer, dan saya tidak nampak mengapa kita perlu dipaksa menggunakan perisian pihak ketiga khusus untuk pembangunan web. </p>
P粉278379495
P粉278379495

membalas semua(2)
P粉268654873

Anda boleh mencuba https://php-download.com/, ia boleh membantu anda memuat turun semua kebergantungan pada kebanyakan masa dan disertakan dengan folder vendor. Ia menjanjikan bahawa komposer tidak diperlukan. Saya sendiri mencubanya. Ia akan mencari dan mencipta semua folder yang diperlukan dan zipnya untuk dimuat turun. Berfungsi dengan sempurna! !

P粉403804844

Dalam contoh anda, composer.jsonfail menyenaraikan kebergantungan.

"require": {
    "php": ">=5.5.0",
    "guzzlehttp/guzzle": "^6.0",
    "psr/http-message": "^1.0",
    "psr/log": "^1.0"
},

Kemudian, anda perlu mencari pakej yang sepadan di laman web packagist. Untuk setiap kebergantungan, ulangi proses yang sama: cari kebergantungan lain dalam fail composer.json yang sepadan dan cari semula.

Apabila anda akhirnya mempunyai senarai lengkap pakej yang diperlukan, anda hanya perlu memasangnya satu demi satu. Dalam kebanyakan kes, hanya meletakkan fail di suatu tempat dalam direktori projek sudah memadai. Tetapi anda juga perlu memastikan PHP boleh mencari kelas yang diperlukan. Memandangkan anda tidak menggunakan autoloader Composer, anda perlu menambahkannya pada autoloader tersuai anda sendiri. Anda boleh mendapatkan maklumat daripada fail composer.json yang sepadan, contohnya:

"autoload": {
    "psr-4": { "Coinbase\Wallet\": "src/" }
},

Jika anda tidak menggunakan autoloader kelas, anda perlu mengetahui penyata require_once individu. Memandangkan kebanyakan pengarang perpustakaan tidak akan mengambil berat tentang perkara ini, anda mungkin perlu melakukan banyak percubaan dan kesilapan.

Selain itu, sekiranya terdapat sebarang kekeliruan mengenai perkara tersebut:

  • Komposer mempunyai pemasang antara muka grafik Windows rasmi dan copy-pasteproses pemasangan baris arahan untuk semua platform.
  • Komposer boleh dijalankan secara tempatan dan outputnya boleh dimuat naik di tempat lain. Anda tidak perlu menggunakan SSH pada pengehosan kongsi.
  • Arahan yang diperlukan untuk memasang pustaka boleh disalin-tampal daripada tapak web pakej dan packagist.org akan menjananya secara lalai walaupun penyelenggara pakej tidak mahu mendokumenkannya.

Komposer tidak sempurna, dan juga tidak sesuai untuk semua kes penggunaan, tetapi apabila ia datang untuk memasang perpustakaan yang bergantung padanya, sudah pasti ia adalah pilihan terbaik, dan cukup bagus pada masa itu.


Saya melihat jawapan yang lain selepas jawapan saya. Mereka terutamanya dibahagikan kepada dua kategori:

  1. Pasang pustaka dan tulis skrip muat turun tersuai
  2. Gunakan antara muka dalam talian Komposer berasaskan web

Melainkan saya terlepas sesuatu, tiada seorang pun daripada mereka menjawab soalan yang dibangkitkan oleh OP:

  • Keluk Pembelajaran
  • Gunakan perisian pihak ketiga
  • Mungkin berkembang pada pelayan (menggunakan SSH, saya rasa)
  • Pohon pokok pergantungan dalam yang berpotensi
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!