BasicPHP 框架 1.1.0 喜迎国庆,隆重推出

BasicPHP——一个开源的PHP框架。
简单、易用、安全、高效,是本框架的设计理念。
该框架旨在提高开发效率、降低开发门槛,并兼容不同的服务器环境。
项目网址&源码下载:
[url]http://code.google.com/p/basic-php/[/url]

BasicPHP的重要版本更新已经完成了,由1.0版本正式进入1.1版本。

1.1版更新日志:

(1)精简代码,清理了一些鸡肋功能,包括:
1.删减掉了image的折线图绘制功能。(不必要使用,图表绘制推荐使用OpenFlashChart)
2.删减掉了数据库对sqlite的支持。(不常使用,而且使用方法不同于其他数据库引擎)
3.删减掉了程序rewrite功能。(纯粹鸡肋,请直接使用WebServer上的rewrite功能)
4.删减掉model文件中的$query功能(可以直接通过自定义方法或新方法代替)

(2)优化框架的执行效率,包括:
1.修改分页处理方式,使之更加合理。(新的不兼容之前的代码,需要做小的修改)
//1.0版本的分页代码如下:
$data = $dao->page(NULL, 'time DESC');
$page = new pagination($data, 5);
//1.1版本的分页代码如下:
$data = $dao->page(NULL, 'time DESC', 5); //将$pageSize移动到这里
$page = new pagination($data);
2.count()和新增的sum()方法也加入到了AutoCache中。
3.对程序代码的逻辑进行修改,使逻辑判断更加合理,避免执行不必要的代码。
4.对一些功能做了实际的性能和效率测试,对一些代码的细节作出了调整。

(3)ORM的改进:
1.新增sum()方法,用来求和。
2.save()方法的修改,使用save()就可以完成插入/更新/替换,并兼容之前的代码。
insert:$dao->save(); //等价于$dao->add();
update:$dao->save('id = 100'); //无条件update为:$dao->save('1=1');
replace:$dao->where('id = 100')->save(1); //此时save()中的参数1表示replace,不是where条件;
3.不必创建model文件就可以使用ORM。如果不需要定制模型,model目录可以一直空着。
4.SQL语句管理、迭代功能,可以更加灵活的定制你的SQL操作。
譬如:$dao->column('id')->where('id < 100')->sum();
等价于:$dao->sum('id', 'id < 100');(SQL操作器中的参数优先级更高)
或者更加复杂的操作:$dao->column('t.title')->alias('t')->join('demo d', 't.id = d.id')->where('t.id > 1')->group('t.id')->having('count(t.id) > 0')->order('t.id DESC')->limit('10')->select();
SQL管理器:column、alias、join、where、group、having、order、limit
SQL操作器:select、get、all、count、sum、add、save、delete
5.分页类中的getHtml()去掉了$url参数,分页链接的URL将自动解析。

(4)URL解析方式的修改:
全面支持服务器端URL重写,可以使用apache、nginx等的rewrite功能实现伪静态。

(5)一些细节的修改,包括:
1.base::toHTML方法名称修改为base::toHtml。
2.base::alert()可以选择是否返回前一个页面,base::redirect()显示的消息改为弹出形式。
3.添加了base::header()方法。
4.数据库cache返回结果集时剔除了cache标志。
5.对所有的header()进行了处理,避免可能出现的错误警告。
6.除了上述之外的一些小的细节的修改和一些小的Bug的修复。

(6)对Common部分的修改:包括:
1.Auth类的内核的修改,改正了1.0版中不合理的地方。
2.Session类的一些细节修改。
3.修正了Cache类中的flush方法,避免安全隐患。
4.Image类中所有对图像的方法处理都添加了bool返回值。(验证码除外)
5.解决Mail类中的中文乱码、读取文件无效等多个Bug。
6.Pagination类的修改,使分页方法更加合理。
7.修正了Upload类在文件上传出现错误时的错误信息始终为'Invalid Upload'的问题。
8.对其他杂类的一些细节修改。

(7)完善API手册。
对已有的内容进行完善,为新增的功能或改动更新内容,并完成了Common部分的手册。
发布了33 篇原创文章 · 获赞 1 · 访问量 3112
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览