browser icon
You are using an insecure version of your web browser. Please update your browser!
Using an outdated browser makes your computer unsafe. For a safer, faster, more enjoyable user experience, please update your browser today or try a newer browser.

การพัฒนา web Application ด้วยภาษา PHP โดยใช้ Codelgniter Framework

Posted by on 5 มิถุนายน, 2012

เรื่องอบรม : การพัฒนา web Application ด้วยภาษา PHP โดยใช้ Codelgniter Framework

ฝึกอบรมเชิงปฏิบัติการ ระหว่างวันที่ 14-16 พฤษภาคม 2555

CodeIgniter คือ framwork ที่ถูกพัฒนาด้วยภาษา PHP สำหรับเป็นเครื่องมือช่วยพัฒนาเว็บไซต์และเว็บแอปพลิเคชั่น โดยมี โครงสร้างการพัฒนาโปรแกรมอย่างเป็นระบบและรวมคำสั่งต่าง ๆ ที่จำเป็นต่อการพัฒนาเว็บไซต์ ภายใน codelgniter พัฒนาโดย Risk Ellis ซึ่งมีลิขสิทธิ์เป็น Open Source สามารถดาวน์โหลดได้ฟรีที่ http://codeigniter.com/  สรุปรูปแบบการใช้งาน 

Model-View-Controller (MVC )
คือโครงสร้างตามหลักการ ระบบจะแยกส่วนประมวลผล ออกจากส่วนแสดงผล แต่ในทางปฎิบัติ สามารถเขียนโค้ด PHP ลงในส่วนแสดงผลได้เช่นกัน

    • Models : อธิบายโครงสร้างข้อมูล แบบฉบับของคลาสแบบจำลองจะมีฟังก์ชั่นที่ช่วยให้คุณรับ , ใส่ , ปรับปรุงข้อมูลของคุณในฐานข้อมูล
    • View : คือข้อมูลที่ถูกแสดงให้กับผู้ใช้ View ส่วนใหญ่จะเป็นเว็บเพจ แต่ใน CodeIgniter , view สามารถเป็นเพียงบางส่วนของหน้าได้ เช่น ส่วนหัว ส่วนท้าย มันสามารถจะเป็นหน้า RSS หรือเป็นอย่างอื่นได้ที่เป็น “เพจ”
    • Controller : ถูกใช้เป็น สื่อกลาง ระหว่าง Model , View และแหล่งที่มาอื่นๆที่ต้องการในการทำงาน HTTP request และการสร้างเว็บเพจ

ขั้นตอนการทำงาน

  • index.php : เป็นตัวควบคุมส่วนหน้า, สร้างทรัพยากรพื้นฐานที่ต้องการในการรัน CodeIgniter
  • Rounting : ตัว Router ทำการตรวจสอบ HTTP request กำหนดว่าควรจะทำอะไรกับมัน
  • Caching : ถ้ามีไฟล์แคชอยู่ ตัวมันจะถูกส่งกลับทันทีไปยังบราวเซอร์ โดยไม่ผ่านการทำงานปกติของระบบ
  • Security : ก่อนที่จะโหลดตัวควบคุมของแอพพลิเคชั่น (Application Controller) HTTP request และผู้ใช้ใดๆที่ส่งข้อมูลมาจะถูกกรองข้อมูลเพื่อความปลอดภัย
  • Application Controller : โหลดแบบจำลอง(Model) , ไลบรารี่หลัก(Libraries) , plugins, ผู้ช่วย (Helpers) และทรัพยากรอื่นๆที่จำเป็นในทำงานที่ถูกร้องขอมา
  • View : ปฎิบัติงานและถูกส่งกลับไปยังบราวเซอร์เพื่อโชว์หน้าจอ ถ้าระบบแคชถูกใช้งาน หน้าจอจะถูกแคชก่อนแล้วจึงค่อยส่งสิ่งที่ร้องขอมาเป็นลำดับถัดไป

หากเป็นภาษาไทย => http://codeigniter.in.th/user_guide/#top

วิดีโอ -> http://codeigniter.com/tutorials/watch/blog/

ตัวอย่าง ระบบที่พัฒนาโดย Codeigniter ทีได้ฝึกอบรม

อ้างอิง :
– เอกสารการอบรม Codeigniter อ.บริพัตร บุญลี คณะเทคโนโลยีอุตสาหกรรม มหาวิทยาลัยราชภัฏอุบลราชธานี
– website http://codeigniter.com
– website http://codeigniter.in.th

3 Responses to การพัฒนา web Application ด้วยภาษา PHP โดยใช้ Codelgniter Framework

  1. hs3vyd

    ตัว Framework ที่นิยมใช้ร่วมกัน PHP และเป็น Opensource มีตัวไหนแนะนำบ้างครับ และ Codelgniter Framework ฟรีไหมครับ

  2. seekeaw@gmail.com

    ตอบเป็นข้อ ๆ นะครับ

    – ตัว Framework ที่นิยมใช้ร่วมกับ PHP จริง ๆ มีหลายตัวครับ
    เช่น CakePHP , Zend Framework, และอื่น ๆ

    – Codelgniter Framework เป็น Opensource ของฟรีครับ ตามที่ผมสอบถามจาก
    อาจารย์ผู้สอนเรื่องนี้

    ขอบคุณมากครับสำหรับคำถาม 🙂

  3. taweewat.ubu@gmail.com

    http://www.phpframeworks.com/top-10-php-frameworks/

    จากที่ผมได้สัมผัสกับ php framework มาในอันดับ 1 2 และ 3 ส่วนตัวชอบ Codeigniter (อ่านว่า โค้ดอีกไนเตอร์ หรือ โค้ดอีกไนเจอร์) มากที่สุดเพราะว่ามีความยืดหยุ่นสูงมา ความยื่ดหยุ่นในที่นี้ก็คือเราสามารถใช้ทั้งรูปแบบของ Framework หรือเราจะเขียนแบบธรรมดาที่เคยเขียนมา หรือจะเป็นในรูปแบบ OOP ก็ได้ หรือ จะเขียนผสมผสานกันไปเลย ไม่จำเป็นต้องเป็น syntax ของ Codeigniter อย่างเดียวก็ได้นั่นเอง ส่วนที่ชอบอีกอย่างหนึ่งของ Codeigniter คือ เวอร์ชั่นใหม่ได้ทำการตัด scaffolding ออกไปคือ ฟังก์ชั่นสร้างหน้าเว็บเพจอัตโนมัติ ซึ่งผมฟังก์ชั่นนี้ทำให้ผมค่อนข้างหงุดหงิดในการใช้งานพอสมควร เพราะผมคิดว่ามันอัตโนมัติเกินไป (แต่ท่านอื่นๆอาจจะชอบ) ส่วน Yii (อ่านว่า ยี) กับ CakePHP เท่าที่ได้ไปอบรมมา รูปแบบการทำงานก็คล้ายๆกัน แต่จะยังมีฟังก์ชั่น Scaffolding ให้ใช้งานอยู่ แต่การใช้งานก็ค่อนข้างยุ่งยาก เช่นของ CakePHP จะต้องเข้าไป Bake code ใน CMD และข้อดีของ Yii กับ CakePHP คือ การสร้างไฟล์ใน MVC นั้นระบบสามารถรู้ได้เลยว่าไฟล์นั้นเป็นของใคร ต่างจากของ Codeigniter คือต้องทำการดึงมาใช้เอง….นี้เป็นการสรุปในความคิดผมคร่าวๆครับ

ใส่ความเห็น