วิธีใช้งาน core ใน codeigniter เพิ่มคุณสมบัติระบบหลัก
สำหรับการพัฒนาเว็บไซต์ด้วย framework ไม่ว่าจะใช้เฟรมเวิร์คอะไรบนโลกนี้ โดยพื้นฐานแล้วก็เพื่อกำหนดมาตรฐาน
การทำงานให้ไปในทิศทางเดียวกัน เพื่อประโยชน์คือการ แก้ไข ปรับปรุง และพัฒนาต่อยอดได้โดยง่าย
codeigniter framework เป็นอีกหนึ่งเฟรมเวิร์คที่มีมาตรฐานหรือกรอบการทำงานที่ชัดเจนแต่ถึงกระนั้นผู้พัฒนา
เฟรมเวิร์คก็ออกแบบโครงสร้างให้รองรับการพัฒนาต่อยอดที่ยืดหยุ่น จะเห็นได้จากการที่เราสามารถเพิ่มความสามารถ
ของระบบได้ด้วยการใช้งาน core system ใน codeigniter
ตั้งค่า core class
ก่อนที่เราจะทำการเพิ่มคุณสมบัติใด ๆ เข้าไปใน native libraries ของ codeigniter นั้น ให้เข้าไปตั้งค่า
ใน application/config/config.php เพื่อกำหนด prefix subclass หรือคำนำหน้าของคลาสที่เราจะสร้าง
ขึ้นมา โดยค่าเริ่มต้นของ codeigniter ที่สร้างให้เราคือ “MY_” ( จะเปลี่ยนก็ได้ไม่เปลี่ยนก็ได้ )
$config['subclass_prefix'] = 'MY_';
สร้าง core class
ทดลองสร้าง core class โดยสืบทอดคุณสมบัติของ native libraries คือคลาส CI_Controller
วิธีสร้าง core class ให้สร้างไว้ใน application/core/MY_Controller.php
class MY_Controller extends CI_Controller {
public function __construct()
{
parent::__construct();
}
}
ใช้งาน core ใน Controller
ก่อนหน้านี้เราได้สร้าง core คลาสชื่อว่า MY_Controller ซึ่งสืบทอดคุณสมบัติต่าง ๆ ของ CI_Controller
เราสามารถนำ MY_Controller ไปใช้ใน Controller ใด ๆ ก็ได้ โดยเขียนโค๊ดได้ดังนี้
class Home extends MY_Controller {
public function __construct()
{
parent::__construct();
}
public function index()
{
$this->load->view('home_view');
}
}
ใช้งาน core method ใน Controller ได้เลย
เราสามารถสร้างเมธอดหรือฟังก์ชั่นใน MY_Controller และนำมาใช้งานใน Controller ได้ทันที
application/core/MY_Controller.php
class MY_Controller extends CI_Controller {
public function __construct()
{
parent::__construct();
}
public function changeLang()
{
}
}
ใช้งานเมธอด changeLang ใน application/controller/Home.php
class Home extends MY_Controller {
public function __construct()
{
parent::__construct();
$this->changeLang();
}
public function index()
{
$this->load->view('home_view');
}
}