PHP zend framework学习心得

开发特点:
PHP zend framework内的框架的文件夹都是通过zend tool工具,通过命令生成的,不需要自己手工添加。
所以使用zend framework框架开发,其实就是用zend tool的命令生成模型、控制器和视图等等,而zend studio的作用是代码的填写。

一、工作步骤:
基本按照Zend Framework Quick Start的顺序就可以了
既:
1)建立项目
2)使用Layout(zf enable layout)
3)配置数据库连接(zf configure db-adapter "adapter=Pdo_Mysql&host=localhost&username=root&password=123456&dbname=webiddb")
4)models/DbTable中 生成对应数据库表的类(zf create db-table 类名 表名),需要注意如果表的主键不是"id",需要声明protected

$_primary='主键名';这里的类名最好与表名相同,这样未来在操作这些类的时候可以直接联想到对应的表。
5) models中建立类(zf create model Xxx),这个类是未来与controller对应的类,也是数据库操作类XxxMapper操作的类,是数据传递的对象。
6)models中建立对应表的操作类XxxMapper(zf create model XxxMapper),此处定义对应表的数据库操作,如增删改查。一定要注意数据库字段的

大小写,不然会出错。我在今后建库的时候,要全部采用小写。
7) controllers中建立控制类(zf create controller Xxx),系统会生成对应的XxxController和对应的View,填充相关内容。

完成以上内容,已经可以读取数据了。

8)建立表单form(zf create form Xxx),建立添加数据的界面,使用$this->addElement方法设置各种数据控件及其属性。
9)建立对应表单的action(zf create action action名 类名),系统生成action的同时,会生成对应的View,填充相关内容。

完成以上内容,已经可以添加数据了。

二、zend framework中的层次分析
1)models/DbTable中的类是与数据库中的表直接对应的,我称之为数据表类。属数据持久层
2)models中的Xxx类定义了系统所要操作的对象,该类直接对应的是controller。该对象在XxxMapper,Controller和View中传递。属数据持久层。
3)models中的XxxMapper类定义了对数据表的操作,以及商业逻辑。属逻辑层。
4)controllers定义了路由,确定用户的操作和对应的视图关系。属展示层中的逻辑部分。
5)views是定义视图,主要是展示作用的视图,属展示层的显示部分。
6)forms是表单,定义用户提交数据的表单结构,属展示层的显示部分。
7)layouts是定义视图结构,也是展示作用,属展示层的显示部分。

三、开发中遇到的问题
1.Project/zend tool 打不开
解决方法:
要使用zend tool 必须首先选择PHP Explor,然后才可以进入Project/zend tool打开

2.zend tool命令不执行
解决方法:
这很大的可能是与命令的当前目录有关,比如要在webidadmin项目中使用zend tool创建model,则必须要先执行
cd webidadmin
然后再执行创建命令。
每次关闭zend tool后,再打开都要执行
cd 项目名称
然后再执行命令。

3.使用zend tool 建立action的时候出现以下错误
Fatal error: Call to undefined function token_get_all()......
解决方法:
更换了php的路径,preferences/php/php executables下面的php路径,改为我自己安装的php路径,问题解决。

4.页面乱码问题
解决方法:
在layout.phtml开始的地方放置
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
皇冠网 载自:www.yfju.com
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值