关于zentaoPHP框架

2009-03-29 21:40:00
王春生
158172
最后编辑:薛才杰 于 2018-07-10 14:56:44
简介:zentaophp框架简介。

一、zentaoPHP框架的缘起

2009年我们决定开始启动禅道项目管理软件的开发,编程语言自然选择了一直使用的PHP。但在开发框架的选择上,颇费了一番功夫。09年的时候,php5.2系列的版本oop的功能已经比较强大,市面上也出现了一大批的框架。比如cakephp, symfony, zend framework, CodeIgniter等等。仔细的研究这些框架之后,符合我们要求的是 CodeIgniter这个框架,概念简单,文档丰富。但遗憾的是这个框架是基于php4面向过程的语法实现的,导致它的很多实现并不是很合理。考虑到我们后续产品的发展,我们决定自己来开发一款框架。于是2009年3月1日,发布了第一个版本。

二、zentaophp框架的特点

zentaophp框架的定位主要是b/s架构的应用开发,它不是一款全能型的框架,主要的目的还是服务我们团队自己的产品研发。因此和其他的框架相比,它有很强的特点:


代码简单

框架的核心只有四个文件,分别为调度类 router.class.php,control类 control.class.php,model类 model.class.php和工具类 helper.class.php。代码的实现也比较简单,有能力的开发者可以很容易在框架基础上进行扩展,增加自己的功能。


性能良好

zentaoPHP框架在实现过程中,十分重视性能。在保证功能的前提下面,尽可能的提升程序执行效率。


结构清晰

使用ZenTaoPHP框架来开发应用,其目录结构简单清晰,维护起来非常的方便。


开发友好

框架,首先是一个框,把你框在了里面。所以很多框架会有很多的约定,你要怎样,你要怎样。还有很多隐形的约定,比如你要在你的代码里面写很多的xxxx之类的东东。我觉得一个好的框架在实现功能的前提下,应当尽量兼顾开发人员之前的开发习惯,所以zentaoPHP框架在这方面花了大量的力气:


中性命名:框架实现时,没有出现什么zentao之类的命名,完全是 中性的命名:router, control, model, config, lang。

配置对象化:配置项可以通过对象的方式来引用,$config->db->user,要比$config['db']['user']简洁顺畅的多。

相对路径包含:所有的路径都可以用相对路径来进行包含,这样可以很清晰的知道目录结构和代码之间的关系。

评论列表
achen 2019-05-10 11:26:59
ERROR: in framework\base\router.class.php on line 2144, last called by framework\base\router.class.php on line 2102 through function connectByPDO.
in framework\base\router.class.php on line 2194 when visiting
报这个问题怎么解决
王春生 2019-05-10 18:31:54
检查数据库服务器状态。链接参数。
2019-03-21 23:28:11
您好,想二次开发批量导入需求,请问应该调用哪个API
王春生 2019-03-22 08:57:12
可以跟踪一下我们批量创建页面的表单提交。
你只需要构造同样的表单提交到批量创建页面就可以了。
zsh 2019-03-21 09:15:30
helper.class.php的cycle函数是如何起到遍历数组的作用呢?在什么地方有调用?
小阮 2018-09-05 15:34:22
刚开始研究这个框架,定时任务要怎么写,有封装吗?
王春生 2018-09-06 08:50:14
定时任务框架没有内置。禅道里面我们有实现,可以参考禅道的代码。
skykfhao 2018-07-10 15:51:34
春哥,是怎么判断数据库删除操作删除成功 isError()?
王春生 2018-07-10 16:03:28
看sql执行是否正常。
Seven.zhou 2018-06-05 09:28:59
CI框架的名称写错了, CodeIgniter
孤独 2017-12-25 15:35:07
查询语句连续使用了两个andWhere后,最后个不生效,怎么解决?where('uid')->eq($uid)->andWhere('state')->eq('2')->andWhere('type')->eq('-1')
王春生 2017-12-25 17:42:08
printSQL()看最终拼装的sql是什么。
pual 2017-12-20 13:41:16
想找个框架开发一个百货管理系统,不知道在支持大数据并发方面有没有什么影响,另外想问下,这个框架开源的吗,我可以免费拿来改改用吗
王春生 2017-12-21 08:29:39
框架是开源的。数据库层面现在框架支持主从备份,如果数据量再大的话,可以上缓存。在dao层可以抽象出来。
noyes 2017-10-03 11:00:10
请问一下,在这个框架里有命名空间的实现么?
王春生 2017-10-09 08:10:27
没有使用命名空间。
小白 2017-09-15 10:38:47
我现在需要在编辑项目的时候,对对应的负责人进行邮件抄送?这个功能我怎么实现,新人,求关照
王春生 2017-09-19 08:23:00
参照我们需求,bug,任务发送邮件的代码。
1/6
发表评论
评论通过审核后显示。