ZenTaoPHP框架发布1.1正式版
自从发布了1.0正式版之后,我转入ZenTaoPMS项目管理软件的开发。在这几个月的开发过程中,陆续发现了框架的一些bug,同时也增强了一些功能,今天正式发布1.1正式版本,欢迎大家下载使用。
tar.gz格式下载:
http://zentaophp.googlecode.com/files/ZenTaoPHP.1.1.tar.gz
pear格式下载:
http://zentaophp.googlecode.com/files/ZenTaoPHP-1.1.tgz
主要改动点如下:
一、helper. class.php
1.1 array2object(): 修复了数组索引为数字的问题。当转成对象的时候,自动在数字索引前面增加“item”作为前缀。
1.2 createLink():增加了viewType参数。这样可以生成/usr/view/123.json格式的链接,之前是只能生成默认的html链接。
1.3 增加了 dbCreateIn()方法,用来生成sql查询中的in部分语句。
1.4 增加了 safeBase64Enocde(), safeBase64Decode()方法,主要来解决url地址作为参数传递的问题。因为url里面含有很多特殊的字符,很有可能会和框架里面定义的变量分隔符冲突,所以在传递之前需要将其编码。
二、 router.class.php
router.class.php 重点修改了参数传递的方式。
2.1 有默认值的参数现在可以不用传递。
之前给一个方法传递参数,必须所有的参数都要传递。即使某一个参数有默认值。修改之后的版本,如果某一个方法有默认值,那么在传递的时候,可以不用传递该参数。
2.2 参数的顺序可以不用严格遵照方法里面定义的顺序。
为了使用这个功能,config.php里面增加了一个配置项:$config['strictParams']
当 $config['pathType'] = 'full‘,且$config['strictParams']= true的时候,传递参数的顺序可以打乱,但参数的名称必须和方法里面的定义保持一致。
如果strictParams设为false,那么可以使用和参数定义里面不同的名称,但传递的顺序必须保持一致。
2.3 增加了getWebRoot()方法。
2.4 修改了__construct()方法的可视性。
原来是private,现在是protected,这样可以从基础的router.class.php中进行派生。zentaoPMS中就采用了这种方式,增加了若干特殊的功能。
三、model.class.php
增加了fetchParis()方法,用来获取key=>value形式的数组。
四、control.class.php
将$app对象自动赋值给模板系统,方便调用。