A keretrendszerek egyik fontos funkciója a “routing” útvonalválasztó. Az útvonalválasztó arra szolgál, hogy tetszőleges egyéni url-ket készíthessünk webalkalmazásunk számára. CodeIgniter-ben az application/config/routes.php fájlban lehet beállítani az url kezelést.

Nézzük meg hogyan épül fel a CodeIgniter alapértelmezett url kezelése.

http://example.hu/class_name/function/parameter

Természetesen egy függvény bármennyi paramétert felvehet. Alapértelmezetten ezt találjuk a routes.php fájlban:

$route['default_controller'] = 'home';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;

A default_controller határozza meg az alapértelmezett vezérlő osztályt, a 404_override pedig az elgépelt, elrontott url-ek esetében meghívott függvényre mutat.

Természetesen létrehozhatunk egyéni url-ket az alábbiak szerint:

$route['kapcsolat'] = 'home/contact';

A fenti példában az example.hu/kapcsolat esetében a Home osztály contact függvénye kerül meghívásra.

Példák:

//az url első szegmense a product a második pedig bármi lehet mindenképp a list függvény hívódik meg
$route['product/(:any)'] = 'product/list';

//az első szegmens a product a második pedig egy szám jelen helyzetben egy termék id-ja ami automatikusan a $1 jelöléssel át is ad paraméterként a product_by_id függvénynek
$route['product/(:num)'] = 'catalog/product_by_id/$1';

// Az érthetőség kedvéért itt egy kis példa, hogy is néz ki a product_by_id függvény:

public function product_by_id($id) {
$id = intval($id);
//a termék id-val itt már lehet dolgozni
}

Használhatunk reguláris kifejezéseket is:

$route['products/([a-z]+)/(\d+)'] = '$1/id_$2';

$route['login/(.+)'] = 'auth/login/$1';

 

A szerzőről

Fodor Balázs

Webfejlesztő. Minden érdekel ami IT, ezenkívül videókat készítek és vágok, speciális effekteket készítek, képeket szerkesztek, és nagyon érdekel az IT Security.

Kapcsolódó bejegyzések

Válaszolj

Az e-mail címed nem publikáljuk.