Karang projek PHP anda dengan mudah dengan membenarkan komposer menguruskan semua kebergantungan
Komposer ialah alat pengurusan pergantungan untuk PHP. Ia berbeza daripada pengurus pakej tradisional seperti apt
dan dnf
, dengan cara yang tidak memasang pakej & perpustakaan secara global pada tahap seluruh sistem sebaliknya ia mengendalikannya untuk setiap projek secara berasingan. Oleh itu ia adalah pengurus pergantungan dan bukan pengurus pakej.
Sama seperti cara seorang komposer muzik mengambil sekumpulan instrumen dan mengaturnya untuk berfungsi dengan sempurna dalam konsert, Komposer untuk PHP mengambil sekumpulan perpustakaan & rangka kerja, membungkusnya untuk bekerja bersama-sama dan mencipta asas yang kukuh di mana projek PHP boleh dikarang.
Prasyarat
Anda memerlukan akses kepada sistem Ubuntu 20.04 dengan bukan akar sudo
pengguna akaun. Selain itu, anda perlu memasang beberapa kebergantungan untuk Komposer, yang termasuk php-cli
untuk menjalankan skrip PHP dalam terminal anda, buka zip
untuk membantu Komposer mengekstrak pakej yang dimuat turun dan keriting
untuk memuat turun skrip pemasangan komposer
Untuk memasang semua pakej yang diperlukan, kemas kini senarai pakej Ubuntu dengan menjalankan arahan kemas kini:
kemas kini sudo apt
Kemudian pasang php-cli
, buka zip
dan keriting
menggunakan arahan berikut:
sudo apt install php-cli unzip curl
Anda akan digesa untuk mengesahkan pemasangan, tekan Y
kemudian tekan enter. Selepas anda memenuhi semua prasyarat, anda boleh terus memasang Komposer.
Muat turun dan Pasang Komposer
Komposer menawarkan skrip PHP yang kemas untuk memuat turun dan memasangnya pada mesin anda dari baris arahan. Kita perlu gunakan keriting
untuk memuat turun skrip ini, sahkan kesahihannya atas sebab keselamatan dan kemudian laksanakannya untuk memasang Komposer.
Pastikan terminal anda dibuka dalam direktori rumah dan kemudian muat turun skrip pemasangan dengan menggunakan keriting
:
cd ~ curl -sS //getcomposer.org/installer -o composer-setup.php
Seterusnya, kami perlu mengesahkan skrip pemasangan yang telah kami muat turun adalah tulen dengan memadankan cincang SHA-384nya dengan yang terdapat pada halaman Kunci Awam Komposer/Jumlah Semakan. Untuk berbuat demikian, dapatkan cincang SHA-384 daripada halaman Kunci Awam Komposer dan simpannya dalam pembolehubah shell.
Hash=`curl -sS //composer.github.io/installer.sig`
Kemudian sahkan bahawa anda telah berjaya memperoleh dan menyimpan cincangan dalam pembolehubah dengan menjalankan:
echo $Hash
Anda harus mendapatkan output beberapa rentetan rawak seperti ini dari terminal:
Pengeluaran: e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a
Sekarang, jalankan kod PHP berikut yang disediakan oleh Komposer untuk mengesahkan ketulenan skrip pemasangan:
php -r "jika (hash_file('SHA384', 'composer-setup.php') === '$Hash') { echo 'Pemasang disahkan'; } lain { echo 'Pemasang rosak'; nyahpaut('penyediaan komposer .php'); } echo PHP_EOL;"
Pengeluaran: Pemasang disahkan
Jika anda melihat keluaran lain seperti Pemasang rosak
, maka anda akan tahu bahawa skrip itu rosak dan ia tidak selamat untuk dijalankan. Muat turun skrip sekali lagi menggunakan curl, kemudian laksanakan kod PHP dalam terminal sekali lagi untuk mengesahkan skrip pemasangan.
Anda boleh meneruskan pemasangan apabila anda berjaya mengesahkan pemasang. Anda boleh memasang Pasang Komposer secara global atau tempatan untuk satu projek.
Pasang Komposer Secara Global
Untuk memasang Komposer secara global sebagai perintah seluruh sistem bernama komposer
, jalankan arahan berikut:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Komposer akan dipasang di /usr/local/bin
direktori pada sistem Ubuntu 20.04 anda dan anda akan melihat output seperti ini:
Pengeluaran: Semua tetapan betul untuk menggunakan Muat Turun Komposer... Komposer (versi 1.10.7) berjaya dipasang pada: /usr/local/bin/composer Gunakannya: php /usr/local/bin/composer
Sahkan bahawa Komposer dipasang dengan betul dan berfungsi dengan menjalankan:
komposer
Pengeluaran: ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / /_ / / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Versi komposer 1.10.7 2020-06- 03 10:03:56 Penggunaan: perintah [pilihan] [argumen]
Anda telah berjaya memasang komposer pada sistem Ubuntu 20.04 anda. Anda kini boleh mula menggunakan Komposer untuk mengurus, mengemas kini dan memasang kebergantungan dalam projek PHP anda dengan segera.
Memasang Komposer Secara Tempatan
Memasang Komposer secara setempat berguna apabila anda tidak mempunyai kebenaran untuk memasangnya pada tahap seluruh sistem atau jika anda mahukan Komposer untuk satu projek sahaja. Untuk memasang komposer dijalankan secara tempatan:
php composer-setup.php
Perintah di atas akan mencipta fail baharu dalam direktori semasa anda dipanggil komposer.phar
. Anda perlu mengalihkan fail ini dalam folder akar projek untuk menggunakan ciri Komposer. Fail ini boleh dijalankan menggunakan arahan yang ditunjukkan di bawah.
php composer.phar
Asas Komposer
Sekarang, setelah anda memasang Komposer pada mesin Ubuntu 20.04 anda, mari kita lihat beberapa asas Komposer. Komposer bertujuan untuk memudahkan pemasangan dan kemas kini kebergantungan yang mudah dan untuk berbuat demikian ia mencipta banyak fail dalam direktori akar projek. Mari kita lihat struktur direktori projek menggunakan Composer untuk mengurus kebergantungan.
Struktur akar Projek Komposer:ProjectRoot/ ├── composer.json ├── composer.lock ├── Project.php ├── komposer.phar *Hanya jika anda telah memasang Komposer secara setempat └── vendor ├── autoload.php ├── komposer │ ├── ClassLoader.php │ ├── LESEN │ ├── autoload_classmap.php │ ├── ..... ├── .......
- The
komposer.json
fail yang terletak dalam direktori akar projek menyimpan semua maklumat tentang kebergantungan (pakej) yang diperlukan oleh projek. - The
komposer.kunci
memegang maklumat mengenai pakej yang versi dikunci untuk projek itu. vendor
ialah direktori di mana semua pakej disimpan, ia juga mempunyai beberapa skrip PHP sepertiautoload.php
, yang memudahkan kemasukan automatik pakej dalam direktori vendor.- Akhir sekali, jika anda telah memasang Komposer secara tempatan, anda mesti mempunyai
komposer.phar
fail dalam direktori projek untuk memasang pakej.
Semua fail ini dicipta apabila anda menggunakan fail komposer
atau php composer.phar
arahan untuk memuat turun dan memasang pakej untuk projek anda buat kali pertama. Jadi mari kita lihat kerja Komposer dengan mencipta projek Demo.
Mencipta Projek Pertama anda Menggunakan Komposer
Langkah pertama ialah mencipta direktori akar untuk projek anda, jadi buat satu dengan mkdir
arahan dan navigasi ke sana dengan menggunakan cd
perintah:
mkdir ~/ComposerDemo cd ~/ComposerDemo
Sekarang, kami perlu mencari dan memasang pakej/perpustakaan yang diperlukan untuk membina projek demo kami. Packagist ialah repositori Komposer utama yang menyenaraikan semua pakej PHP yang tersedia secara umum yang boleh dipasang dengan Komposer.
Dalam contoh ini, kami akan menggunakan pakej PHP yang dipanggil cakephp/chronos
, ia adalah sambungan API mudah untuk tarikh & masa. Oleh itu untuk menjana projek Komposer baharu dan memasang pakej Chronos jalankan arahan berikut:
komposer memerlukan cakephp/chronos
Pengeluaran: Menggunakan versi ^2.0 untuk cakephp/chronos ./composer.json telah dibuat Memuatkan repositori komposer dengan maklumat pakej Mengemas kini kebergantungan (termasuk require-dev) Operasi pakej: 1 pemasangan, 0 kemas kini, 0 penyingkiran - Memasang cakephp/chronos (2.0.5 ): Memuat turun (100%) Menulis fail kunci Menjana fail autoload
The memerlukan
pilihan mengambil dan memasang pakej yang anda inginkan dan menjana fail dan direktori seperti komposer.json
, komposer.kunci
dan vendor
dalam direktori akar projek. Anda akan melihatnya cakephp/chronos
ditambah kepada komposer.json
jika anda menjalankan arahan berikut:
komposer kucing.json
Pengeluaran: { "memerlukan": { "cakephp/chronos": "^2.0" } }
Seterusnya marilah kami menggunakan Chronos dalam projek Demo kami, buka dan buat fail PHP yang dipanggil demo.php
menggunakan nano
:
nano demo.php
Kemudian tambahkan kod berikut pada demo.php
, baris kedua yang merangkumi vendor/autoload.php
ialah fail Komposer yang secara automatik memuatkan semua pakej dan perpustakaan yang dipasang untuk projek itu. Simpan fail dengan menekan Ctrl+O
dan kemudian keluar dari editor nano dengan menekan Ctrl+X
.
Laksanakan demo.php
dengan menjalankan arahan berikut:
php demo.php
Pengeluaran: Sekarang: 23-06-2020 17:07:45
Pada masa hadapan apabila anda perlu mengemas kini pakej dan perpustakaan projek anda, hanya jalankan arahan berikut:
kemas kini komposer
Perintah di atas akan menyemak versi pakej terpasang yang lebih baharu dan mengemas kininya dengan selamat tanpa memecahkan projek dan perpustakaan yang saling bergantung.
Kami telah melihat cara memasang Komposer pada mesin Ubuntu 20.04 dan melihat asas yang perlu anda ketahui tentang Komposer. Anda kini boleh cuba membina projek baharu dengan menambah pakej yang diperlukan dengan mencari di Packagist. Jika anda ingin mengetahui lebih lanjut tentang Komposer dan pilihannya pergi ke halaman dokumentasi dalam talian Komposer.