关于zentaoPHP框架

2009-03-29 21:40:00
王春生
263436
最后编辑:薛才杰 于 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']简洁顺畅的多。

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

评论列表
xion 2023-02-03 19:42:15
老师好,请问这个框架支持事务吗,怎么写呢
王春生 2023-02-07 08:35:51
可以。 begin, rollback, commit 你搜索下。
2022-09-08 16:57:11
老师您好,我这边想要添加多个数据源,除已有的mysql外,希望添加一个SQL server ,但添加了sql的扩展文件,还是无法访问sql
王春生 2022-09-09 08:15:01
sqlserver不支持。需要自己额外开发。
石小小 2022-09-07 09:39:43
https的域名,在这个域名下301到另一个页面,怎么是iframe嵌套呢,怎么设置不让iframe嵌套呢,禅道版本是V17.3
王春生 2022-09-09 08:14:28
看不懂你要表达的意思。
xiong 2022-08-24 08:35:32
老师好,请问这个框架支持多数据源吗,配置两个数据库
王春生 2022-08-25 13:29:26
查表的时候,把数据库的名字加上就可以了。这样是最简单的。
xiong 2022-07-21 13:37:36
老师好,框架一个请求阻塞了,其他请求也打不开,这是啥情况呢,
王春生 2022-07-22 08:09:50
先找找错误日志?
yiyi 2022-04-22 16:57:11
请问生产环境数据量很大,后台备份的文件只有 1.xKB?
王春生 2022-04-24 08:28:30
那应该是有问题了。检查下日志,或者收工执行下备份脚本。
2021-12-23 18:29:49
请教个问题:my.php文件改了数据库名字,再改回来,然后环境就重定向到此链接 :http://127.0.0.1/zentaopms/www/install.php
王春生 2021-12-24 08:32:41
里面有一个installed=true的选项,不要改动。
2021-12-24 09:29:47
只修改了数据库,其他没有改动
2021-12-24 09:31:44
解决了谢谢
刘超超 2021-09-24 18:09:04
get方式换成path_info之后,用postman访问接口的时候,接收不到参数(The param 'pro' should pass value)
王春生 2021-09-27 08:35:33
方法里面的参数是需要通过url路径传参的。
forever 2020-07-30 11:42:38
禅道如何引入第三方类库
王春生 2020-07-31 08:37:26
直接放在lib目录下面即可。可以参考我们的第三方类库。然后使用的时候可以直接用$this->loadClass()方法加载。保证文件名和类名保持一致。
杰杰 2019-10-21 15:44:04
有批量excel导入数据的接口吗?
1/8
发表评论
评论通过审核后显示。