Pemrograman Web

Kapita selekta Pemrograman Web

Zend Framework: Bootstrapping

Sebagai langkah awal membangun aplikasi PHP menggunakan Zend Framework (ZF) berikut ini tentang bootstrapping di ZF yang berdasarkan struktur MVC yang telah dibahas sebelumnya. Pengertian bootstrapping kurang lebihnya yakni pemuatan dan eksekusi program pemanggil program lain yang lebih komplek.

Dalam ZF, yang berfungsi sebagai bootstrap yakni index.php untuk mengeksekusi semua permintaan dan kemudian diproses oleh kode program dalam berkas lain. ZF juga mendukung clean url, untuk mengimplementasikan hal ini perlu didukung konfigurasi dalam berkas .htaccess.

Url : http://localhost/aplikasi-web/

Struktur direktori dan letak file secara ringkas :

/aplikasi-web/
  index.php
  .htaccess
  /application/
    .htaccess
    ...
  /library/
    .htaccess
    /Zend/
  /public/
    .htaccess

/aplikasi-web/.htaccess :

RewriteEngine on
RewriteBase /
RewriteRule !’.(js|ico|txt|gif|jpg|png|css)$ index.php

php_flag magic_quotes_gpc off
php_flag register_globals off

/aplikasi-web/application/.htaccess dan ./library

deny from all

/aplikasi-web/public

RewriteEngine off

Kode program dalam berkas index.php :

 <?php

set_include_path(’.’ 
. PATH_SEPARATOR . ’./library’
. PATH_SEPARATOR . ’./application/models/’
. PATH_SEPARATOR . get_include_path());
include "Zend/Loader.php";

Zend_Loader::loadClass(’Zend_Controller_Front’);

$front_ctrl = Zend_Controller_Front::getInstance();
$front_ctrl ->throwExceptions(true);
$front_ctrl ->setControllerDirectory(’./application/controllers’);

// menjalankan program
$front_ctrl->dispatch();

Penjabaran kode PHP di atas adalah sebagai berikut :

Perintah set_include_path() untuk memuat pustaka Zend Framework yang diletakkan di ’/library/Zend’, model class yang terletak di ’./application/models/’ sehingga dengan mudah mengakses keseluruh direktori. Kemudian memuat berkas pustaka kelas (class) ’Zend/Loader.php’ yang berguna untuk menjalankan kelas ZF lainnya.

Sementara Zend_Loader::loadClass() berfungsi untuk memuat kelas pengontrol utama dalam pustaka ZF untuk mengeksekusi program selanjutnya. Kelas yang pertama kali dimuat adalah Zend_Controller_Front yang berfungsi untuk memetakan URL yang diminta sehingga dapat diintepretasikan dengan benar oleh fungsi (function) untuk menampikan hasil/halaman.

Sedangkan variabel $frontctrl berfungsi untuk mengkonfigurasi dan menjalankan Controller class. Sebagai catatan, dalam proses debuging sebaiknya dalam baris pertama berkas index.php perlu diset error_reporting(E_ALL|E_STRICT); untuk melacak kesalahan dalam kode program.

Ada 5 komentar untuk artikel ini. Ikuti diskusi

  1. andree

    mo blajar zend framework awalnya dari mana yaa, baiknya?
    punya refferensi situs-situs buat tutorialnya?
    klo bisa yang lokal.

    thanks!

    December 17th, 2007 at 21:04

  2. Yan Arief

    @andree : mungkin anda bisa belajar ZF di http://www.zftutorials.com/ atau bergabung di http://www.zfforums.com/
    untuk tutorial lokal saya belum menemukan ZF tutorial yg komprehensif.

    December 18th, 2007 at 09:51

  3. cimz

    mas, sebelumnya thx neh tuts nya ya..
    ada yang mau saya tanyain nih mas, saya baru banget soalnya belajar zend.
    mengenai, file .htaccess,, itu untuk konfigurasi di httpd.conf nya ada yang harus di ubah ya??

    April 1st, 2008 at 20:38

  4. yuyus

    kalo menurut anda, which better? prado,cakephp or zend framewok?
    alasannya apa, coz bingung mo belajar ap…

    July 22nd, 2008 at 22:01

  5. Dhani

    Gimana ngeset date di zend

    July 31st, 2008 at 13:46

Ikuti diskusi, tuliskan komentar Anda.

Anda setuju dengan kebijakan privasi Asia Blogging Network.

Pemrograman Web is part of Asia Blogging Network