ขั้นตอนต่อไปให้ทำการแก้ไข Index\Index\Controller ให้เรียกใช้ View
namespace Index\Index;
use \Kotchasan\Http\Request;
use \Kotchasan\Template;
class Controller extends \Kotchasan\Controller
{
public function index(Request $request)
{
// กำหนดค่า template ที่ต้องการใช้งาน
Template::init('skin/'.self::$cfg->skin);
// สร้าง View
$view = new \Kotchasan\View;
// แทนที่ข้อความลงใน View
$view->setContents(array(
'/{TITLE}/' => self::$cfg->web_title,
'/{CONTENT}/' => self::$cfg->web_description
));
// โหลดไฟล์ Template (index.html)
$template = Template::load('', '', 'index');
// แสดงผล
echo $view->renderHTML($template);
}
}
คำอธิบายอยู่ในโค้ดนะครับ ผมอธิบายเพิ่มบางส่วนดังนี้
- self::$cfg->skin เป็นตัวแปรระบุ Template ที่ใช้งานอยู่ อยู่ในไฟล์ Kotchasan/config.php ซึ่งค่าเริ่มต้นคือ default ตามที่เราสร้าง Template ไว้ รวมกับโฟลเดอร์ skin/ ซึ่งเป็นไดเร็คทอรี่ที่เก็บ Template
- $view->setContents(); เป็นเมธอดสำหรับแทนที่ตัวแปรลงในไฟล์ สังเกตุนะครับว่าผมใช้ /{TITLE}/ ซึ่งเป็นรูปแบบ pcre เนื่องจากเมธอดนี้รองรับการใช้งาน pcre ด้วยนั่นเอง ดังนั้นถ้ามีการกำหนดค่าเป็นอย่างอื่นให้ระบุให้ถูกต้องตามรูปแบบด้วย
- {TITLE} จะถูกแทนที่ด้วย web_title และ {DESCRIPTION} จะถูกแทนที่ด้วย web_description (ดูใน Kotchasan/config.php)