Zend Framework – Céges Demo portál – index.php fájl elkészítése

Nos készítsük el a Demo portálunk index.php fájlját amelyet a public_html könyvtárban helyezünk el.

Először is be kell állítanunk alkalmazásunk elérési útjait. Be kell töltenünk a Zend_Loader objektumot amely  ZF-ös objektumok betöltését segíti.

Be kell állítanunk a Globals.php elérési útját, amelyben majd az alkalmazásunk adatbázis kapcsolatát valósítjuk meg. Ez azért jó mivel elég lesz majd egy config.ini fájlban megadni az adatbázis felhasználó nevét jelszavát valamint az  adatbázis nevét, amelyet ezek után bárhol használhatunk. Megkönnyítve ezzel a munkánkat nem kell mindenhol külön megírunk az adatbázis kapcsolat felépítését. Ezenkívül portálunk mobilitását is nagyban elősegíti majd.

Betöltjük a Controller_Front osztályt ami elősegíti a Controllerek események lekezelését. Az MVC kódolás miatt betöltjük a kezdő Layout-ot. $frontController változó segítségével valósítjuk meg a vezérlést. Megadjuk a Controllerek elérési útját.

Végül egy Plugint adunk hozzá, amely a hibakezelést segít megvalósítani számunkra. Majd a dipatch() metódus segítségével az adott kérést elküldjük a megfelelő Controllernek. Mivel ez így leírva érthetetlennek tűnik, tekintsük meg alább a kikommentzett forráskódot is:
index.php Tartalma:

//elérési utak beállítása
$lib_paths = array();
//alkalmazás fájl elérési útjának beállítása
$lib_paths[] = "../application/";
//ZF fájljai elérési útjának beállítása
$lib_paths[] = "../lib/";
$inc_path = implode(PATH_SEPARATOR, $lib_paths);
set_include_path($inc_path);
//Zend_Loader betöltésea ZFes függvények használata miatt
require_once '../lib/Zend/Loader.php';
Zend_Loader::registerAutoload();
//Globals.php amiben az adatbázis kapcsolatunkat definiáljuk
require_once '../application/config/Globals.php';
//betöltjük a ZF FrontController osztályt ami lekezeli a Controllereket
Zend_Loader::loadClass('Zend_Controller_Front');
//MVC kódolási technika miatt beállítjuk hogy melyik layout legyen a kezdő layout
Zend_Layout::startMvc(array('layoutPath' => Globals::getConfig()->dirs->layouts, 'layout' => 'Main' )); // layout beállítása
$frontController = Zend_Controller_Front::getInstance();
//Controllerek elérési útjának beállítása
$frontController->setControllerDirectory('../application/controllers');//controller könyvtár elérésenk beálítása
//egy Plugint adunk hozzá ami a Hibakezelést hivatott megvalósítani
$frontController->registerPlugin(new Zend_Controller_Plugin_ErrorHandler());
$frontController->dispatch();
?>

Advertisements

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s