มี error ขึ้นดังนี้ครับ
-----------------------------------------------------------------------------------------------------
"Deprecated: Non-static method Index\Menu\Model::get() should not be called statically in D:\wamp\www\testkasha\kotchasan\modules\index\controllers\index.php on line 36 "
-----------------------------------------------------------------------------------------------------
ผมเลยลองเปลี่ยนวิธีเขียนมาเป็นแบบนี้
$menu = new \Kotchasan\Menu;
$model = new \Index\Menu\Model;
'/{TOPMENU}/' => $menu->render($model->get(), $module)
หรือเขียนแบบนี้
'/{TOPMENU}/' => (new \Kotchasan\Menu)->render((new \Index\Menu\Model)->get(), $module)
หมายเหตุ การระบุ Template สามารถทำได้หลายช่องทางครับ เช่นการกำหนดลงในโค้ดตรงๆ เช่นตัวอย่างนี้ หรือการกำหนดลงใน config ไฟล์ ในตัวอย่างอื่นๆ
พอผมใส่โค้ด
'/{TOPMENU}/' => \Kotchasan\Menu::render(\Index\Menu\Model::get(), $module) แบบนี้แล้วปรากฎว่า
มี error ขึ้นดังนี้ครับ
-----------------------------------------------------------------------------------------------------
"Deprecated: Non-static method Index\Menu\Model::get() should not be called statically in D:\wamp\www\testkasha\kotchasan\modules\index\controllers\index.php on line 36 "
-----------------------------------------------------------------------------------------------------
ผมเลยลองเปลี่ยนวิธีเขียนมาเป็นแบบนี้
$menu = new \Kotchasan\Menu;
$model = new \Index\Menu\Model;
'/{TOPMENU}/' => $menu->render($model->get(), $module)
หรือเขียนแบบนี้
'/{TOPMENU}/' => (new \Kotchasan\Menu)->render((new \Index\Menu\Model)->get(), $module)
ปรากฎว่าสามารถรันได้เป็นปกติเลยครับ
คือผมอยากทราบว่าทำไมถึงเขียนแบบที่ท่านเขียนไม่ได้อะครับ
ตรงนี้อาจไม่เกี่ยวกับ framework ของอาจารย์ ขออภัยด้วยครับ
ขอบคุณครับ
เพิ่ม static ไปอีกตัว เนื่องจาก PHP เวอร์ชั่นใหม่ๆจะเตือน ถ้าไม่ใส่คำว่า static แต่เรียกแบบ static