เขียนโครงการ PHP ของคุณอย่างง่ายดายโดยให้ผู้แต่งจัดการการพึ่งพาทั้งหมด
Composer เป็นเครื่องมือจัดการการพึ่งพาสำหรับ PHP มันแตกต่างจากตัวจัดการแพ็คเกจดั้งเดิมเช่น ฉลาด
และ dnf
ในลักษณะที่ไม่ติดตั้งแพ็คเกจ & ไลบรารีทั่วโลกในระดับทั้งระบบ แต่จะจัดการแยกกันสำหรับแต่ละโครงการ ดังนั้นมันจึงเป็นตัวจัดการการพึ่งพาและไม่ใช่ตัวจัดการแพ็คเกจ
เหมือนกับที่นักแต่งเพลงใช้เครื่องดนตรีหลายชิ้นและจัดเรียงให้ทำงานได้อย่างไร้ที่ติในคอนเสิร์ต Composer for PHP ใช้ไลบรารีและเฟรมเวิร์กจำนวนหนึ่ง แพ็กเกจเพื่อทำงานร่วมกัน และสร้างรากฐานที่มั่นคงซึ่งโครงการ PHP สามารถเป็นได้ ประกอบด้วย
ข้อกำหนดเบื้องต้น
คุณต้องเข้าถึงระบบ Ubuntu 20.04 ที่ไม่ใช่รูท sudo
บัญชีผู้ใช้. นอกจากนี้ คุณต้องติดตั้งการพึ่งพาสำหรับ Composer ซึ่งรวมถึง php-cli
เพื่อเรียกใช้สคริปต์ PHP ในเทอร์มินัลของคุณ เปิดเครื่องรูด
เพื่อช่วย Composer แยกแพ็คเกจที่ดาวน์โหลดมาและ ขด
เพื่อดาวน์โหลดสคริปต์การติดตั้งผู้แต่ง
ในการติดตั้งแพ็คเกจที่จำเป็นทั้งหมด ให้อัพเดตรายการแพ็คเกจ Ubuntu โดยรันคำสั่ง update:
sudo apt อัปเดต
จากนั้นติดตั้ง php-cli
, เปิดเครื่องรูด
และ ขด
โดยใช้คำสั่งต่อไปนี้:
sudo apt ติดตั้ง php-cli unzip curl
คุณจะได้รับแจ้งให้ยืนยันการติดตั้ง กด Y
แล้วกด Enter หลังจากที่คุณได้ปฏิบัติตามข้อกำหนดเบื้องต้นทั้งหมดแล้ว คุณสามารถทำการติดตั้ง Composer ต่อไปได้
ดาวน์โหลดและติดตั้ง Composer
นักแต่งเพลงเสนอสคริปต์ PHP ที่เรียบร้อยเพื่อดาวน์โหลดและติดตั้งบนเครื่องของคุณจากบรรทัดคำสั่ง เราจำเป็นต้องใช้ ขด
ในการดาวน์โหลดสคริปต์นี้ ให้ตรวจสอบความถูกต้องของสคริปต์เพื่อเหตุผลด้านความปลอดภัย จากนั้นดำเนินการเพื่อติดตั้ง Composer
ตรวจสอบให้แน่ใจว่าเทอร์มินัลของคุณเปิดอยู่ในไดเร็กทอรีหลัก จากนั้นดาวน์โหลดสคริปต์การติดตั้งโดยใช้ ขด
:
cd ~ curl -sS //getcomposer.org/installer -o composer-setup.php
ต่อไป เราต้องตรวจสอบว่าสคริปต์การติดตั้งที่เราดาวน์โหลดนั้นเป็นของแท้โดยจับคู่แฮช SHA-384 ของสคริปต์นั้นกับสคริปต์ที่พบในหน้า Composer Public Key/ Checksums ในการดำเนินการดังกล่าว ให้ขอรับแฮช SHA-384 จากหน้า Composer Public Key และจัดเก็บไว้ในตัวแปรเชลล์
Hash=`curl -sS //composer.github.io/installer.sig`
จากนั้นตรวจสอบว่าคุณได้รับและจัดเก็บแฮชในตัวแปรสำเร็จโดยเรียกใช้:
echo $Hash
คุณควรได้ผลลัพธ์ของสตริงสุ่มเช่นนี้จากเทอร์มินัล:
เอาท์พุท: e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a
ตอนนี้ ให้รันโค้ด PHP ต่อไปนี้ที่ Composer จัดเตรียมไว้ให้เพื่อตรวจสอบความถูกต้องของสคริปต์การติดตั้ง:
php -r "if (hash_file ('SHA384', 'composer-setup.php') === '$Hash') { echo 'ผู้ติดตั้งตรวจสอบแล้ว'; } อื่น ๆ { echo 'ตัวติดตั้งเสียหาย'; ยกเลิกการเชื่อมโยง ('ผู้แต่งตั้งค่า .php'); } echo PHP_EOL;"
เอาท์พุท: ยืนยันตัวติดตั้งแล้ว
หากคุณเห็นผลลัพธ์อื่น ๆ เช่น ตัวติดตั้งเสียหาย
แล้วคุณจะรู้ว่าสคริปต์เสียหายและไม่ปลอดภัยที่จะเรียกใช้ ดาวน์โหลดสคริปต์อีกครั้งโดยใช้ curl จากนั้นรันโค้ด PHP ในเทอร์มินัลอีกครั้งเพื่อตรวจสอบสคริปต์การติดตั้ง
คุณสามารถดำเนินการติดตั้งต่อได้เมื่อคุณตรวจสอบตัวติดตั้งเรียบร้อยแล้ว คุณสามารถติดตั้ง Install the Composer ได้ทั่วโลกหรือในเครื่องสำหรับโปรเจ็กต์เดียว
ติดตั้ง Composer ทั่วโลก
ในการติดตั้ง Composer ทั่วโลกเป็นคำสั่งทั้งระบบที่ชื่อว่า นักแต่งเพลง
ให้รันคำสั่งต่อไปนี้:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
นักแต่งเพลงจะถูกติดตั้งใน /usr/local/bin
ไดเร็กทอรีบนระบบ Ubuntu 20.04 ของคุณและคุณจะเห็นผลลัพธ์เช่นนี้:
เอาท์พุท: การตั้งค่าทั้งหมดถูกต้องสำหรับการใช้ Composer กำลังดาวน์โหลด... Composer (เวอร์ชัน 1.10.7) ติดตั้งสำเร็จไปที่: /usr/local/bin/composer ใช้: php /usr/local/bin/composer
ตรวจสอบว่า Composer ได้รับการติดตั้งอย่างถูกต้องและทำงานโดยการเรียกใช้:
นักแต่งเพลง
เอาท์พุท: ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / / / / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 1.10.7 2020-06- 03 10:03:56 การใช้งาน: คำสั่ง [ตัวเลือก] [อาร์กิวเมนต์]
คุณได้ติดตั้งผู้แต่งบนระบบ Ubuntu 20.04 เรียบร้อยแล้ว ตอนนี้คุณสามารถเริ่มใช้ Composer เพื่อจัดการ อัปเดต และติดตั้งการพึ่งพาในโครงการ PHP ของคุณได้ทันที
การติดตั้ง Composer ในเครื่อง
การติดตั้ง Composer ในเครื่องมีประโยชน์เมื่อคุณไม่มีสิทธิ์ติดตั้งในระดับทั้งระบบ หรือหากคุณต้องการให้ Composer สำหรับโครงการเดียวเท่านั้น ในการติดตั้งคอมโพสเซอร์ในเครื่องให้รัน:
php composer-setup.php
คำสั่งดังกล่าวจะสร้างไฟล์ใหม่ในไดเร็กทอรีปัจจุบันของคุณที่ชื่อว่า composer.phar
. คุณจะต้องย้ายไฟล์นี้ในโฟลเดอร์รูทของโปรเจ็กต์เพื่อใช้ฟีเจอร์ Composer ไฟล์นี้สามารถเรียกใช้ได้โดยใช้คำสั่งที่แสดงด้านล่าง
php composer.phar
พื้นฐานนักแต่งเพลง
ตอนนี้ คุณได้ติดตั้ง Composer บนเครื่อง Ubuntu 20.04 แล้ว ให้เรามาดูข้อมูลพื้นฐานเกี่ยวกับ Composer กัน Composer มุ่งหวังที่จะอำนวยความสะดวกในการติดตั้งและอัปเดตการพึ่งพาได้ง่าย และสร้างไฟล์จำนวนมากในไดเร็กทอรีรากของโปรเจ็กต์ ให้เราดูโครงสร้างไดเร็กทอรีของโครงการโดยใช้ Composer เพื่อจัดการการพึ่งพา
โครงสร้างรากโปรเจ็กต์ผู้แต่ง:โครงการราก/ ├── composer.json ├── composer.lock ├── Project.php ├── composer.phar *เฉพาะในกรณีที่คุณติดตั้ง Composer ในเครื่อง └── ผู้ขาย ├── autoload.php ├── นักแต่งเพลง │ ├── ClassLoader.php │ ├── ใบอนุญาต │ ├── autoload_classmap.php │ ├── ..... ├── .......
- ดิ
composer.json
ไฟล์ที่อยู่ในไดเร็กทอรีรูทของโปรเจ็กต์เก็บข้อมูลทั้งหมดเกี่ยวกับการพึ่งพา (แพ็คเกจ) ที่โปรเจ็กต์ต้องการ - ดิ
composer.lock
เก็บข้อมูลบนแพ็คเกจที่ถูกล็อคเวอร์ชันสำหรับโปรเจ็กต์ ผู้ขาย
เป็นไดเร็กทอรีที่จัดเก็บแพ็คเกจทั้งหมด แต่ก็มีสคริปต์ PHP บางตัวเช่นautoload.php
ซึ่งอำนวยความสะดวกในการรวมแพ็คเกจโดยอัตโนมัติในไดเร็กทอรีผู้ขาย- สุดท้าย หากคุณได้ติดตั้ง Composer ในเครื่อง คุณต้องมี
composer.phar
ไฟล์ในไดเร็กทอรีโครงการเพื่อติดตั้งแพ็คเกจ
ไฟล์ทั้งหมดเหล่านี้ถูกสร้างขึ้นเมื่อคุณใช้ นักแต่งเพลง
หรือ php composer.phar
คำสั่งดาวน์โหลดและติดตั้งแพ็คเกจสำหรับโครงการของคุณในครั้งแรก ให้เราดูการทำงานของ Composer โดยการสร้างโครงการสาธิต
การสร้างโครงการแรกของคุณโดยใช้ Composer
ขั้นตอนแรกคือการสร้างไดเร็กทอรีรูทสำหรับโปรเจ็กต์ของคุณ ดังนั้นสร้างไดเร็กทอรีด้วย mkdir
คำสั่งและนำทางไปยังมันโดยใช้ ซีดี
สั่งการ:
mkdir ~/ComposerDemo cd ~/ComposerDemo
ตอนนี้ เราต้องค้นหาและติดตั้งแพ็คเกจ/ไลบรารีที่จำเป็นในการสร้างโครงการสาธิตของเรา Packagist คือที่เก็บ Composer หลักซึ่งแสดงรายการแพ็คเกจ PHP ที่เผยแพร่ต่อสาธารณะทั้งหมดที่สามารถติดตั้งด้วย Composer
ในตัวอย่างนี้ เราจะใช้แพ็คเกจ PHP ที่เรียกว่า cakephp/chronos
มันเป็นส่วนขยาย API อย่างง่ายสำหรับวันที่ & เวลา ดังนั้นเพื่อสร้างโปรเจ็กต์ Composer ใหม่และติดตั้งแพ็คเกจ Chronos ให้รันคำสั่งต่อไปนี้:
นักแต่งเพลงต้องการ cakephp/chronos
เอาท์พุท: ใช้เวอร์ชัน ^2.0 สำหรับ cakephp/chronos ./composer.json แล้ว กำลังโหลดที่เก็บผู้แต่งพร้อมข้อมูลแพ็คเกจ การอัปเดตการพึ่งพา (รวมถึง require-dev) การทำงานของแพ็คเกจ: ติดตั้ง 1 ครั้ง, อัปเดต 0 ครั้ง, ลบ 0 รายการ - การติดตั้ง CakePHP/chronos (2.0.5) ): กำลังดาวน์โหลด (100%) กำลังเขียนล็อกไฟล์ กำลังโหลดไฟล์อัตโนมัติ
ดิ จำเป็นต้อง
option ดึงและติดตั้งแพ็คเกจที่คุณต้องการและสร้างไฟล์และไดเร็กทอรีเช่น composer.json
, composer.lock
และ ผู้ขาย
ในไดเรกทอรีรากของโครงการ คุณจะเห็นว่า cakephp/chronos
ถูกเพิ่มเข้าใน composer.json
หากคุณเรียกใช้คำสั่งต่อไปนี้:
cat composer.json
เอาท์พุท: { "require": { "cakephp/chronos": "^2.0" } }
ต่อไปให้เราใช้ Chronos ในโครงการสาธิตของเรา เปิดและสร้างไฟล์ PHP ชื่อ demo.php
โดยใช้ นาโน
:
nano demo.php
จากนั้นเพิ่มรหัสต่อไปนี้ใน demo.php
, บรรทัดที่สองซึ่งรวมถึง vendor/autoload.php
เป็นไฟล์ Composer ซึ่งจะโหลดแพ็คเกจและไลบรารีทั้งหมดที่ติดตั้งสำหรับโปรเจ็กต์โดยอัตโนมัติ บันทึกไฟล์โดยกด Ctrl+O
แล้วออกจากโปรแกรมแก้ไขนาโนโดยกด Ctrl+X
.
ดำเนินการ demo.php
โดยรันคำสั่งต่อไปนี้:
php demo.php
เอาท์พุท: ขณะนี้: 2020-06-23 17:07:45
ในอนาคตเมื่อคุณต้องการอัพเดตแพ็คเกจและไลบรารีของโปรเจ็กต์ของคุณ เพียงแค่รันคำสั่งต่อไปนี้:
อัพเดทผู้แต่ง
คำสั่งดังกล่าวจะตรวจสอบเวอร์ชันใหม่ของแพ็คเกจที่ติดตั้งและอัปเดตอย่างปลอดภัยโดยไม่ทำลายโปรเจ็กต์และไลบรารีที่ขึ้นต่อกัน
เราได้ดูวิธีการติดตั้ง Composer บนเครื่อง Ubuntu 20.04 และดูข้อมูลพื้นฐานที่คุณจำเป็นต้องรู้เกี่ยวกับ Composer ตอนนี้คุณสามารถลองสร้างโครงการใหม่โดยเพิ่มแพ็คเกจที่จำเป็นโดยค้นหาใน Packagist หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ Composer และตัวเลือกให้ไปที่หน้าเอกสารประกอบออนไลน์ของ Composer