时间:2021-05-25
本文总结分析了Zend Framework入门知识点。分享给大家供大家参考,具体如下:
zend framework是MVC模式的一种实现,要快速的入门差不多只看Zend_Controller Zend_View 部分就可以了吧。
1.Zend_Controller部分。最重要的类是Zend_Controller_Front.使用它的经典代码很 简单:
$front=Zend_Controller_Front::getInstance();$front-> setControllerDirectory("./app/controllers");$front->dispatch();这里要说明的 是不能使用new来获得一个Zend_Controller_Front,只能调用getInstance方法来返回一个实例(我的 zend_framework用的是1.01)。这里我指定的controllers目录是在www文档根目录之下的app文件夹之下。一般情况下app 不应该放在文档根目录下——所谓的安全问题:如果配置不严格,www文档根目录下的文件可能对访问者来说都是可见的。一般要放在别的目录,比如放在和文档 根目录同级的地方则可以使用:
$front->setControllerDirectory("../app/controllers")多了 一个"."。这里使用的是相对路径。你可以用路径全名指定其他目录。比如:
$front->setControllerDirectory("E: /server/app/controllers")这部分是包含在index。php中的。在正确的配置下,任何请求都会由rewrite功能重定向到这$front即前端控制器Zend_Controller_Front实例。所有认证什么的处理都要在dispatch前处理。
2.Zend_View 常用代码为:
$view=new Zend_View();Zend_Registry::set("view".$view);默认采用了Zend_Framework推荐的目录结构. 即views和 controllers models同级都在application目录下。views下面有三个同级目录scrīpts helpers filters。这样当你定义了一个Controller,你就得在scrīpts下面新建一个目录,用来存放该Controller下属的模板。比如简 单的
Class IndexController extends Zend_Controller_Action{ function IndexAction() { }}你就要相应的在里面建立一个index目录,在index目录下建立一个index.phtml的模板。如果在IndexController下另 建了一个function addAction(),你就得再在index在新建一个add.phtml。你有另一个UserController,你就要相应的有个user目录在 scrīpts下。这些*.phtml文件类似于html文件,定义你输出的内容显示方式。简单的就是留着空白也可以。但就是不能没有,否则会提示说 "error“invalid Controller...这是因为默认的ErrorController是已经注册的。当前端控制器找不到相应的控制器分发的时候就会调用默认的 ErrorController。
我们有时候不想使用默认的目录结构也不想使用默认的phtml类型的视图模板。这时我们可以使用
$view->setParam ("noViewRanderer",true);来取消默认的phtml类型目录设置。用
$view->setParam ("noErrorHandler",true);来写在默认的ErrorController。使用
$view->setscrīptPath ("./app/views");来设置你的模板所在位置。这在使用smarty模板时很有用。
可以这么写:
$view=new Zend_View_Smarty();$view->setParam("noViewRanderer",true);$view->setParam("noErrorHandler",true);$view->setscrīptPath("./app/views");Zend_Registry::set("view".$view);在使用的时候可以这么获取:
$view=Zend_Registry::get("view");3. 刚接触的时候对于model可以简单的理解为数据对象,对于操作数据库的一般可以直接继承Zend_Db_Table这个类封装的很不错,一般使用足够了:
class data extends Zend_Db_Table{ protected $_name="data";}你只需指定表的名称,当然你可以不显示指定,这时zendf会默认的以你的类名去查找数据库中的表。别忘了为Zend_Db_Table指定 defaultAdapter:
$config = new Zend_Config_Ini('./application/config.ini', 'general');$db = Zend_Db::factory($config->db->adapter, $config->db->config->toArray());Zend_Db_Table::setDefaultAdapter($db);config.ini类似于[general]
db.adapter = PDO_MYSQLdb.config.host = localhostdb.config.username = robdb.config.password = 123456db.config.dbname = zftest更多关于zend相关内容感兴趣的读者可查看本站专题:《Zend FrameWork框架入门教程》、《php优秀开发框架总结》、《Yii框架入门及常用技巧总结》、《ThinkPHP入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
复制代码代码如下:/***知识点1:ListViewitem:两种长按弹出菜单方式*知识点2:ListViewSimpleAdapter的使用*知识点3:在ja
本文总结了YiiFramework入门知识点。分享给大家供大家参考,具体如下:创建Yii应用骨架web为网站根目录yiicwebapp/web/demo通过GI
本文讲述了ZendFramework开发入门相关知识点。分享给大家供大家参考,具体如下:ZendFramework发布了!虽然仍处于开发初期,这个教程仍突出讲解
新手要如何入门友情链接优化?  SEO优化入门很简单,想精通却很难,需要SEOer自主学习相关的一些知识点和技巧,然后通过大量的实践去进行验
昨天带伙伴萌学习python爬虫,准备了几个简单的入门实例涉及主要知识点:web是如何交互的requests库的get、post函数的应用response对象的