สร้าง Project PHP และจัดการ Package ด้วย Composer
สำหรับบทเรียนรู้นี้เป็นการพัฒนา Web Application ภาษา PHP โดยใช้ Composer เป็นตัวจัดการ Package หากยังไม่รู้ว่า Comoser คืออะไรตามไปอ่านเพิ่มเติมได้ที่ Composer สำหรับ PHP Developer
Composer เป็นโปรแกรมสำหรับจัดการ Package ต่างๆ ที่เราติดตั้งโดยเมื่อ Package ที่เราติดตั้งมีการ Update Composer ก็จะ Update ให้เราเช่นกัน ทำให้เกิดความสะดวกโดยที่ไม่ต้องดาวน์โหลดมาติดตั้งเอง (สมัยก่อนมีสัก 10 Package นี่ก็ยุ่งเหมือนกัน)
การสร้าง Project
เริ่มจากการสร้าง Folder ใน Root directory ของ Web server ในที่นี้ผมตั้งชื่อว่า php_tutorial โดยใช้ WAMP Server (ใช้ตัวอื่นก็ได้ครับ)
D:\wamp\www\php_tutorial
จากนั้นสร้างไฟล์ composer.json พร้อมใส่ {} ดังนี้
{
}
จากนั้นเปิด command prompt แล้วเข้าไปที่ folder php_tutorial จากนั้นพิมพ์คำสั่ง
composer update
จะเห็นว่ามี folder vendor เกิดขึ้นและมีไฟล์ต่างๆ เกิดขึ้นดังนี้

โดย Package ต่างๆ จะถูก autoload เข้ามาโดยอัตโนมัติ โดยที่ไม่ต้อง include(); ไฟล์ Package ให้ยุ่งยาก
การติดตั้ง Package
ทดลองติดตั้ง Package โดยเข้าเว็บไซต์
https://packagist.org/
แล้วค้นหา Package เช่น mpdf เป็น Package สำหรับการสร้างไฟล์ PDF
และเปิดดูจะพบคำสั่งในการติดตั้ง

พิมพ์คำสั่งใน command prompt
composer require mpdf/mpdf
เมื่อติดตั้งเสร็จแล้วจะเห็นว่ามีข้อมูลเกิดขึ้นที่ไฟล์ composer.json
{
"require": {
"mpdf/mpdf": "^6.1"
}
}
เมื่อติดตั้งเสร็จแล้ว

และจะเห็นว่า Package ได้ถูก load ในไฟล์ autoload_classmap.php เรียบร้อยแล้ว พร้อมกับการ map class ต่างๆ ไว้ให้เรียกใช้งาน (use)

การนำ Package ไปใช้งาน
ในไฟล์ที่ต้องการนำ Package ไปใช้งานนั้นให้ทำการ include() ไฟล์ autoload.php ใน vendor ดังนี้
<?php
include 'vendor/autolod.php';
จากนั้นหากต้องการเรียกใช้งาน package ไหนให้ใช้คำสั่ง use ได้เลย เช่น
use mPDF;
use my\name\space\MyClass;
ในที่นี้มาทดลองใช้งาน mPDF ในการสร้างไฟล์ PDF ด้วย PHP กัน สามารถดูเพิ่มเติมได้จาก
https://mpdf.github.io/getting-started/creating-your-first-file.html
ตัวอย่างการเรียกใช้งาน mPDF
<?php
//mpdf.php
include 'vendor/autoload.php';
use mPDF; //mPDF ได้มาจาก key index ใน autoload_classmap.php
$mpdf = new mPDF();
$mpdf->WriteHTML('
Hallo World
');
$mpdf->Output();
ตัวอย่างผลลัพท์ http://localhost/php_tutorial/mpdf.php

บทสรุป
การเขียนโปรแกรมด้วยภาษา PHP นั้นมีโปรแกรมที่ช่วยในการจัดการ Package ซึ่งช่วยให้สะดวกต่อการติดตั้งและอัพเดทแพกเกจต่างๆ ทำให้เกิดความสะดวกในการเรียกมาใช้งาน และเป็นมาตรฐานสากลมากยิ่งขึ้น
ความคิดเห็น (0)
ยังไม่มีความคิดเห็น — เริ่มคุยเป็นคนแรก ถามสิ่งที่สงสัย หรือแชร์ประสบการณ์ของคุณ