ไม่ขอกล่าวว่า Smarty template คืออะไรไปหาอ่านเอาเองมีเยอะมาก เรียวใช้ Smarty มาตั้งแต่เวอร์ชั่น 2.6 หลังจากนั้นพึ่งมาอัพเดทเป็นเวอร์ชั่น 3 เมื่อไม่นานมานี้
ปกติเวลาเราจะรัน code php ในหน้า template นั้นเราจะเขียนได้ดังนี้
{php} include "module/menu.php"; {/php}
ก็คือเขียนไว้ใน {php} {/php } นั่่นเอง
ทีนี้พอเรียวอัพเดทเป็นเวอร์ชั่น 3 ปุ๊บ Error ทันทีบอกไม่สามารถรัน code php ได้
Fatal error: Uncaught exception 'SmartyException' with message '{php} is deprecated, set allow_php_tag = true to enable' in ..................บลา ๆๆๆๆๆ
เนื่องจากเวอร์ชั่น 3 ค่า Default ของ allow_php_tag นั้นจะเป็นค่า FALSE นั่นหมายความว่ามันจะไม่ยอมให้ไปรัน code php ในหน้า template
ดังนั้นเราจะจัดการกำหนดค่าให้มันใหม่
$smarty = new Smarty(); // instance object ของ Smarty ขึ้นมาก่อน
$smarty->allow_php_tag = true; // กำหนดค่าพร็อพเพอร์ตี้ allow_php_tag ให้เป็น TRUE ซะ
แค่นี้ก็สามารถรัน code php ใน Smarty template 3 ได้แล้วเจ้าค่ะ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น