我眼里的THINKPHP5新亮点(2)

1.模型->获取器、修改器、聚合模型php

获取器的做用是在获取数据的字段值后自动进行处理。修改器的做用是能够在数据赋值的时候自动进行转换处理。thinkphp

感受在实际应用中是挺有用的,好比表单有个radio选项是1天,3天,5天,存进数据库应该是存int或enum类型,这时候就须要修改器(或者用radio的value传数字);而后要把表单信息列在表格也须要从int/enum转成字符串1天,3天,5天,这时候就须要获取器。在TP3.2以前这些操做都是在显示前进行判断来转换。如今有这些TP有的方法也是系统和方便了不少。数据库

聚合模型也是我以为挺好的。其实就是对两张表关联起来,对有紧密联系的两张表的操做仍是会有挺多的。因此继承的是Merge而不是原来的Model。函数

 

2.模板标签<volist><eq>如今变成{volist}{eq}thinkphp5

默认是{},不过能够经过如下配置来改为原来尖括号<>的那种形式单元测试

'template'      => [
    // 模板引擎
    'type'   => 'think',
    //标签库标签开始标签 
    'taglib_begin'  =>  '<',
    //标签库标签结束标记
    'taglib_end'    =>  '>',     
],

 

3.异常处理测试

这个在(1)的时候提到了,在文档里也有详细的说明。spa

和PHP默认的异常处理不一样,ThinkPHP抛出的不是单纯的错误信息,而是一我的性化的错误页面。code

4.单元测试继承

貌似以前的TP版本是没有这个特性。TP5的免费文档里也是一笔带过单元测试,因此这是须要看源码才能了解用法吗...或许在收费文档里有详细介绍?

感受如今都在规范开发流程,因此测试也做为一个必要的步骤。其实本人没怎么用过测试,尝试过的就只有phpunit,ab。嗯之后仍是要多接触一下测试的方法。

 

5.数据库

数据库的各类方法和Laravel大同小异,虽然以前的模式也差很少可是起码有TP本身的特点。改的很少不过也多了几个挺有用的函数,好比chunk、each。

 

安利一波 TP5免费文档的附录->升级指导,详细地说明了5.0和3.2的不一样点,很熟悉3.2及以前版本的人应该会颇有感触吧,毕竟好像本身的孩子长大了并且还脱胎换骨了同样哈哈哈。正如里面所说的,强烈建议开发者抛弃以前旧的思惟模式,由于5.0是一个全新的颠覆重构版本。

BTW,但愿TP愈来愈强大!

 

若有错误,恳请指点。_(:з」∠)_,谢谢观看。

参考:ThinkPHP5.0彻底开发手册(http://www.kancloud.cn/manual/thinkphp5)

相关文章
相关标签/搜索