ย้อนกลับไปเกือบ 10 ปี ช่วงเรียนมหาวิทยาลัยอยู่ ได้มีโอกาศเขียน PHP ครั้งแรก ด้วย PHP3 ซึ่งไม่ยากเท่าไหร่ในการเขียน สามารถแทรกลงใน HTML แล้วก็ติดต่อ Mysql ได้เลย จนมีโอกาสได้ทำงานก็มาจับ PHP อีกครั้ง แต่การเขียนเป็นมาตรฐานขึ้น มีการแบ่ง File เช่น Connect db ,File Function , File Class
เอาละมาถึงยุค Framework บ้าง Framework ก็คือ PHP ที่เขียนมีหลักการ มีการวางโครงสราง และนำเอา libary ต่างๆ มารวามกัน และทำให้สามารถใช้งานได้ง่าย อันนี้กล่าวคร่าวๆ นะครับ
จุดเด่นอีกอย่างคือการใช้ MVC (Model View Controller) เข้ามาใช้ เพื่อการแยกองค์ประกอบระหว่างงานส่วนต่างๆ ในการเขียน Application อันนี้ไม่ขออธิบาย สามารถหาได้ทั่วๆ ไป
PHP Framework ในปัจจุบันมีมากมายหลากหลายแล้วแต่ใครจะใช้อะไร ยกตัวอย่างที่ฮิตๆ กัน ครับว่ามีอะไรบ้าง Zend,Cake,Yuii, phpopenbiz และอีกหลายอย่าง (
http://www.phpframeworks.com/)
เกริ่นมาสั้นๆ ตอนนี้ผมเลือก Codeigniter สำหรับการทำงานครับ โดยสามารถเข้าไปดู และ Download ได้ที่
http://codeigniter.com/ หรือ Web ภาษาไทย
http://codeigniter.in.th ในเว็ปนี้จะมีข้อมูล Manual สำหรับการใช้งาน การเรียกใช้ Function ต่างๆ เยอะครับ และมี Forum สำหรับข้อสงสัยต่างๆ ด้วย
เริ่มกันเลย Download Codeigniter มาก่อนอันดับแรก ตอนนี้เป็น Version 2.1.0 ครับ
1. สร้าง Folder มาก่อน ผมเอาไว้ที่ /var/www/ex1
2. แตก Codeigniter_2.1.0.zip
3. เปลี่ยนชื่อ Folder จาก Codeigniter เป็น app1
4. ลองเข้าไปดูข้างในหน่อยว่ามีอะไรบ้าง
จะเห็นว่าภายใน appliation จะมี Folder ย่อยอีกหลายตัว อันนี้แหละครับที่เค้าทำเป็น Framework แยกส่วนประกอบต่างๆ ของการเขียนโปรแกรมไว้แล้ว
cache เก็บ Cache เมื่อมีการเรียกใช้งาน
config เก็บ file config ต่างๆ เช่น config หลัก , Database , autoload , etc....
controllers เก็บ ส่วนการทำงานหลักของโปรแกรม เป็นตัวแยกว่าจะให้ Application ของเราไปไหนบ้าง
errors เก็บ standard error เช่น ไม่เจอหน้าหลัก ไม่เจอdatabase เราสามารถแก้ไขได้
language คือ การเก็บภาษา เช่นระบบ Application เราจะทำให้รองรับหลายภาษา เราสารถจะนำภาษาต่างๆ ที่แปลเข้าไว้ในนี้ และไป config ว่าจะให้อ่านภาษาอะไรได้บ้าง
libraries เก็บ Clase , library ต่างๆ ที่เราเขียนเอง หรือ มีคนอื่นเขียนไว้ แล้วเราสามารถนำมารวมใน Framework เพื่อใช้งานดได้
logs เก็บ logs
models เก็บ ไฟล์ที่ติดต่อ Database
Views เก็บ ส่วนที่เป็นหน้าตา ในการแสดงออก ไปยัง browser
ทั้งหมดนี้ Framework ทำมาให้แล้ว แต่อาจจะยังไม่เข้าใจ ต้องทดลองทำ และทดลองเขียน( การเขียนโปรแกรม ไม่ใช่ดูแล้วเข้าใจเลย ต้องฝีึกเขียนนะครับบบ)
เมื่อลงตามขั้นตอนแรกเสร็จ ลองมาดูที่ browser ครับว่าเป็นอย่างไร
จะเห็่นว่ามีข้อความ Welcome to codeigniter! มาแล้ว นี่แสดงว่าระบบเริ่มทำงาน แต่มันเป็นเพียงการ Demo เท่านั้น จากนี้ไปเราจะลองปรับเปลี่ยน Config และทำหน้าตากัน
1. ให้เข้าไปใน Folder application/route.php ก่อน
เข้าไปจะเห็น่วามี config ที่ชื่อ
$route['default_controller'] = "welcome";
welcome นี้เป็น File ตั้วอย่าง ที่อยู่ใน Folder controllers ดังนั้นให้เปลี่ยนเป็นชื่ออื่นครับเช่นผมต้องการตั้งชื่อว่า showdata ให้เปลี่ยนแทน welcome เลย
2. จากนั้นให้เข้าไปในโฟด์เดอร์ controllers เลยครับ จะเห็นว่ามี Welcome.php อยู่ ให้ Copy ไปเป็นชื่อ showdata.php ครับ และเปลี่ยน Source code ตามรูปข้างล่าง
เปลี่ยนในส่วนที่ 1 เป็นชื่อเดียวกับ File
และเปลี่ยน ในส่วนที่ 2 เป็นชื่อ show
ในส่วนที่สองนี้เป็นการเรียก view มาใช้งานครับ เราสามารถเขียนหน้าตาสวยอย่างไรบ้าง ก็ในส่วนนี้ครับ แล้ว save ชื่อลง Folder View และเปลี่ยนชื่อตามให้ถูกต้อง
แล้วเจอกัน ตอน 2