初次接触Zend Framework需要掌握的内容

1 各模块工作原理
1.1Zend_Models工作原理
        通过继承Zend_Db_Table(abstract类)管理一个Model类。

1.2Zend_Controller工作原理
        Zend_Controller_Front接收一个请求,然后由 Zend_Controller_Router来决定分配给哪个controller(实现Zend_Controller_Action的类)。 Zend_Controller_Router把URI分解封装成一个Zend_Controller_Dispatcher_Token 对象。Zend_Controller_Front接着进入一个分配循环,调用Zend_Controller_Dispatcher,把token对象传给dispatcher来分配到具体的controller和action进行处理。在controller结束后,又把控制权交加给 Zend_Controller_Front。如果controller发现需要分配另一个controller(返回一个新的token对象),循环会一直继续直到另一次分配执行完毕。

        Zend_Controller_Action提供控制器的基本方法,其他控制器都应该是Zend_Controller_Action的子类。

        说明:
        Zend_Controller_Dispatcher对象在Zend_Controller_Front和实现Router、Dispacther接口的类之间传递。它把Controller、Action和其他Get参数封装到一起。
        处理Controller名称:getControllerName()、setControllerName();
        处理Action名称:getActionName()、setActionName();
        传递给Action参数:getParams()、setParams()。参数是数组key/value形式。

1.3Zend_Views工作原理

2 ZFW基本配置
Index.php:

//设置路径
set_include_path();

//包含Zend/Loader.php类
include 'Zend/Loader.php';

//通过类的静态方法加载其他类
Zend_Loader::loadClass('Zend_Controller_Front');
Zend_Loader::loadClass('Zend_Config_Ini');
Zend_Loader::loadClass('Zend_Registry');
Zend_Loader::loadClass('Zend_Db');
Zend_Loader::loadClass('Zend_Db_Table');
Zend_Loader::loadClass('Zend_Debug');
Zend_Loader::loadClass('Zend_Auth');

//加载配置
new Zend_Config_Ini
Zend_Registry::getInstance()

//设置前端控制器
Zend_Controller_Front::getInstance()
setControllerDirectory()
dispatch()

在index.php不用 ’?>’ 结束,便于错误调试?

类名需要写成模块名_文件名

3 MVC处理规则
        所有的请求都通过单一的index.php作为启动文件,或者说对任何url, 重定向到index.php。对于iamges、css、javascript的请求,不应该重定向到启动文件,把这些文件放到其他目录,如:public。默认controller和action都是index。

        Model的命名:默认类名跟表名保持一致,关键字默认id。可以指定表名和主键名,private $_name=’’和private $_primary=’’。

        Controller的命名:类名和文件名一致,{Controllername}Controller.php,每个单词都以大写字母开头;

        Action的命名:每个Action是Controller里的public函数,名字必须是{actionname}Action,actionname要小写。每个页面叫做‘action’,许多‘action’组成控制器。

        Views的命名:存放到对应Controller下并以action.phtml命名。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值