最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Zend Framework路由器用法實(shí)例詳解

 更新時(shí)間:2016年12月11日 09:32:46   作者:牛逼的霍嘯林  
這篇文章主要介紹了Zend Framework路由器用法,結(jié)合實(shí)例形式分析了Zend Framework路由器的功能、定義與基本使用方法,需要的朋友可以參考下

本文實(shí)例講述了Zend Framework路由器用法。分享給大家供大家參考,具體如下:

路由是一個(gè)過(guò)程,在這個(gè)過(guò)程中它去除URI的端點(diǎn)(跟著基本URL的URI部分),并將其分解成參數(shù)來(lái)決定哪個(gè)模塊、哪個(gè)控制器和哪個(gè)動(dòng)作應(yīng)該接受請(qǐng)求。

模塊、控制器、動(dòng)作、及其參數(shù)被打包到Zend_Controller_Request_Http對(duì)象。

使用路由器

為了正確使用路由器,必須對(duì)其進(jìn)行初始化操作。

創(chuàng)建路由器可以通過(guò)前端控制器實(shí)例的getRouter()方法來(lái)實(shí)現(xiàn)。該方法不需要任何參數(shù),執(zhí)行該方法可以返回一個(gè)Zend_Controller_Router_Rewrite對(duì)象。

創(chuàng)建路由器之后,需要添加一些用戶定義的路由,該操作可以通過(guò)Zend_Controller_Router_Rewrite對(duì)象的addRoute()方法來(lái)實(shí)現(xiàn)。

代碼:

<?php
/**
演示創(chuàng)建路由器的過(guò)程
*/
require_once 'Zend/Controller/Front.php';    //引用Zend_Controller_Front.php
$ctrl = Zend_Controller_Front::getInstance();  //創(chuàng)建一個(gè)前端控制器
$router = $ctrl->getRouter();          //返回一個(gè)默認(rèn)路由,前端控制器功能很強(qiáng)大啊
$router->addRoute('user',new Zend_Controller_Router_Route('user/:username',array('controller'=>'user','action'=>'info')));

4種基本路由

1.缺省路由

定義:缺省路由是存儲(chǔ)在RewriteRouter中名為‘default'的簡(jiǎn)單Zend_Controller_Router_Route_Module對(duì)象。

2.標(biāo)準(zhǔn)框架路由

定義:Zend_Controller_Router_Route是標(biāo)準(zhǔn)的框架路由。

例子:

<?php
//定義標(biāo)準(zhǔn)框架路由
$route = new Zend_Controller_Router_Route('author/:username',
array(
  'controller'=>'profile',
  'action'=>'userinfo'
));
//向路由器中添加定義的路由
$router->addRoute('user',$route);

注:我表示我很暈,日志不好碼啊,自己都不太懂。

3.靜態(tài)路由

定義:特定的路由被設(shè)定成型Zend_Controller_Router_Route_Static。

例子:

<?php
//定義靜態(tài)路由
$route = new Zend_Controller_Router_Route_Static(
'login',
array(
  'controller'=>'auth',
  'action'=>'login'
));
//向路由器中添加定義的路由
$router->addRoute('login',$route);

上述路由將匹配http://domain.com/login的URL,并將其分派到AuthController::loginAction()方法中。

4.正則表達(dá)式路由

Zend_Controller_Router_Route_Regex

案例:

<?php
//正則表達(dá)式路由
$route = new Zend_Controller_Router_Route_Regex(
  'archive/(\d+)',
  array(
    'controller'=>'archive',
    'action'=>'show'
  ));
//向路由器中添加定義的路由
$router->addRoute('archive',$route);

分析:

正則表達(dá)式路由定義的第一個(gè)參數(shù)中的動(dòng)態(tài)部分(“/”后的內(nèi)容)不再是一個(gè)變量,而是一個(gè)正則子模式。

在該例中,成功匹配http://domain.com/archive/2008之后,會(huì)返回如下結(jié)果值的數(shù)組。

$values = array(
1=>'2008',
'controller'=>'archive',
'action'=>'show'
);

后記:

我表示概念太多,很吃力。

更多關(guān)于zend相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Zend FrameWork框架入門(mén)教程》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《Yii框架入門(mén)及常用技巧總結(jié)》、《ThinkPHP入門(mén)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總

希望本文所述對(duì)大家基于Zend Framework框架的PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

普安县| 禄丰县| 田东县| 邵东县| 黄石市| 方城县| 封丘县| 报价| 福贡县| 二连浩特市| 乳山市| 班玛县| 松溪县| 泰来县| 越西县| 云龙县| 阳新县| 呼图壁县| 双桥区| 乐东| 皮山县| 金沙县| 北流市| 阳新县| 葵青区| 平邑县| 黔西县| 磴口县| 黄骅市| 信阳市| 柏乡县| 普陀区| 仙游县| 通道| 元阳县| 基隆市| 通道| 桦甸市| 潍坊市| 渝北区| 安阳县|