Memasang TWIG extension pada SLIM

Sebelum membahas tentang twig, saya akan menyinggung sedikit tentang Slim Micro Framework yang kita gunakan. Dikarenakan sifatnya yang “slim/langsing” tentu ada beberapa fitur yang biasanya terdapat pada framework besar sejenis Yii atau codeigniter yang tidak ada pada micro framework ini. Salah satunya adalah model templating pada tampilan / layout.
Templating adalah teknik untuk memisahkan halaman-halaman sesuai dengan fungsinya. Hal ini akan meringankan dari sisi developer, misalnya saja dalam hal memanggil file javascript, file css atau bagian footer yang tidak pernah / jarang berubah. Dengan model templating maka tidak perlu menuliskan bagian tersebut berulang-ulang. Developer cukup fokus pada bagian content yang sering berubah / dinamis.

Twig adalah sebuah PHP template engine yang digunakan pada beberapa framework PHP. Penggunaan template engine ini sangat membantu para developer web dalam mengatur layout aplikasinya.  Bagi yang menggunakan laravel dan symfony mungkin sudah pernah melihat atau menjumpai penggunaan twig extension. Kali ini saya akan mencoba memasang twig pada framework Slim yang sudah dibahas pada artikel sebelumnya.

Untuk memasang twig bisa menggunakan composer. Caranya tambahkan baris berikut pada file composer.json Anda. Untuk menggunakan twig dengan slim maka membutuhkan slim extras. Caranya dengan menambahkan pada composer.json
"slim/extras": "2.*",
"twig/twig": "1.*"
Apabila digabungkan deng composer.json sebelumnya maka menjadi
{
 "require":{
 "slim/slim":"2.*",
 "slim/extras": "2.*",
 "twig/twig": "1.*"
 }
}
Jalankan composer update / install. dengan perintah
php composer.phar update
Kemudian composer akan mengunduh file twig. Dan twig akan terpasang pada direktori vendor.
Konfigurasi Twig

Konfigurasi twig sangat sederhana, sangat cocok dengan slim yang juga “sederhana”. Cukup modifikasi baris berikut pada file index.php sehingga menjadi

/**sebelumnya
   $app = new \Slim\Slim();
**/
/**ubah menjadi**/
    $app = new \Slim\Slim(array(
        "view" => new \Slim\Extras\Views\Twig()
       );
    );

Twig membutuhkan direktori templates untuk file viewnya. Maka buat terlebih dahulu folder templates dalam root direktori yang dikerjakan.

Untuk mencoba twig, ubah fungsi dalam index.php menjadi seperti berikut

$app->get('/', function () use ($app){
 $data['array'] = array('name'=>'dwi');
 $app->view()->setData(array());
 $app->render('layout.tpl', $data);
 });

dari potongan fungsi diatas maka kita harus membuat file layout.tpl (dalam folder templates) untuk menampilkan data yang kita kirimkan dari fungsi ini. Fungsi ini mengirimkan array dengan nama “array”. Untuk menampilkan isinya dalam layout.tpl menggunakan script berikut

{{array.name}}

artinya adalah menampilkan isi array dengan index name. Maka yang tampil adalah tulisan “dwi”.

Demikian cara penggunaan twig dan slim micro framework. Artikel berikutnya adalah cara templating dengan twig dan menggunakan bootstrap framework. Semoga bermanfaat.

sumber : http://rottmann.net/2013/01/setting-up-slim-php-framework-with-twig-templating/