资讯专栏INFORMATION COLUMN

再看Yii2

waruqi / 1367人阅读

摘要:之前有两篇文章写了一些关于的和的,现在来全局性地看一看相对于到底有哪些改善。先说安装方法,在中已经使用来管理各种依赖关系,你在安装的时候完全可以用来进行安装,而且,还支持两个不同的安装版和。

之前有两篇文章写了一些关于Yii 2.0的MVC和Yii 2.0的Actived Record,现在来全局性地看一看Yii 2.0相对于Yii 1.1到底有哪些改善。个人总结有一下几个:

1.Yii 2.0 的应用目录结构和安装

如果你之前使用过Yii 1.1的话,你可能在刚开始上手Yii 2.0的时候就发现了这个变化,没错,我说的就是Yii 2.0的应用目录结构和安装方法。先说安装方法,在Yii 2.0中已经使用Comsoper来管理各种依赖关系,你在安装的时候完全可以用composer来进行安装,而且,Yii 2.0还支持两个不同的安装版:basic 和 advanced。采用basic安装的话,Yii 2.0会提供一个纯粹的框架开发环境(也就是最基础的应用目录,没有前台);而采取advanced的安装方法,Yii 2.0则会让你拥有一个完整的CMS(跟wordpress一样,分前台和后台)结构的开发环境。对于一些期望快速开发出一个小而美的Web应用的同学,建议使用的basic安装,这就够你玩了,还不用去修改不需要的代码。

之前在Yii 1.1的时候可能有一些上手的同学会觉得那个版本的应用目录有点尴尬,但在Yii 2.0中就完美地给你一个清晰的项目目录结构(至少比Yii 1.1好多了):

backend – 后台.
common –公共文件.
console – console 应用.
environments – 环境配置.
frontend – 前台.

为什么说这样的结构会更好呢?其实就是因为你可以很清晰地知道哪个目录该放什么东西,你几乎可以立马上手去开发你的Yii 2.0应用。

2.Yii 2.0更安全

对于Web应用开发来说,安全从来都是不容忽视的一方面,不过庆幸的是,Yii 2.0的安全特性并不会让你失望,相比于Yii 1.1,在Yii 2.0中使用UserIdentity classes, Access Control Filters 和 Role-based Access Control来对安全进行控制,并且还有一点值得说明的是,在Yii 2.0中还增加了一个安全事件用来把控应用的安全,你可以像下面的示例一样轻松使用:

Yii::$app->security->encrypt()
  

PS:听说Yii 2.0在开发的时候请了一堆安全专家(包括Tom Worster 和 Anthony Ferrara)来review Yii 2.0的代码,以确保Yii 2.0足够安全

3.事务管理

对于事物管理,最大的变化就是你可以在事物中使用回调函数了:

$connection->transaction(function() {
    $order = new Order($customer);
    $order->save();
    $order->addItems($items);
});

另外,Yii 2.0中还为事物管理定义一些新的事件以使得你可以在事物的生命周期内更好的控制事物的整个过程,像beginTransaction 和 commitTransaction 就是这样的事件,分别在开始事物和提交事物的时候触发。

4.更高级的管理

Yii 2.0中还引进一些近年来很火的包管理工具(如bower npm)来管理assets,你可以通过composer来跟bower,npm交互进而更好地为你的开发管理一些依赖管理和开发包。更详细的说明请移步: http://www.yiiframework.com/doc-2.0/guide-structure-assets.html

5.开发工具

在Yii 2.0 中,Yii debugger tool 得到更好的支持和改善,以至于现在它变得跟Symfony debug toolbar差不多了,都很强大。而且,在Yii中,你还不能忽视Gii tool,而在Yii 2.0中,Gii可以直接在console里使用了,这无疑会大大提高你的开发效率,因为通过Gii可以生成很多重复的代码

6.模板引擎

之前也提到过,在Yii 2.0中,你可以使用一些流行的模版引擎了,比如Smarty,Twig等,不再为你的前台文件担心。爽!

  

当然,如何你要使用这些模版引擎,请按需安装官方的模版引擎插件

最后

糊里糊涂地写了一些Yii 2.0地东西,没错,其实我就是想忽悠你上手Yii 2.0的,马上上手请点这里:http://www.yiiframework.com/doc-2.0/guide-intro-yii.html
届时有啥问题可以来交流交流。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/20896.html

相关文章

  • yii2框架中的di容器源码中了解反射的作用

    摘要:反射简介参考官方简介的话,具有完整的反射,添加了对类接口函数方法和扩展进行反向工程的能力。此外,反射提供了方法来取出函数类和方法中的文档注释。 反射简介 参考官方简介的话,PHP 5 具有完整的反射 API,添加了对类、接口、函数、方法和扩展进行反向工程的能力。 此外,反射 API 提供了方法来取出函数、类和方法中的文档注释。 YII2框架中示例 对于yii2框架,应该都知道di容器,...

    dantezhao 评论0 收藏0
  • Swagger PHP使用指南

    摘要:,已经好了,试着访问根目录下,比如试试,出现界面就成功了没从先就用命令看下的路由最上面条就是刚刚添加的路由。 先说什么是Swagger, Swagger的使用目的是方便优美的呈现出接口API的各种定义, 生成API文档, 包括参数, 路径之类. 有时后端改了API的参数或者其他设置, 前端直接看这个Swagger UI就可以, 方便项目管理和团队协作. 官网: http://swagg...

    cnio 评论0 收藏0
  • Yii2 完整框架分析(详细)

    摘要:行为是如何注册到组件的呢通过注册行为之后,实际上是添加到了的属性中那么行为中的属性,就添加到了,中进行直接调用行为里面的方法的时候,实际上触发了里面的魔术方法继承链图解 Yii2 框架Trace 准备 了解composer的autoload psr0 psr4 加载机制 了解spl_autoload_register 了解依赖注入的实现原理反射 了解常用魔术方法__set,__get...

    spademan 评论0 收藏0
  • CLI模式下Yii2的log问题追踪

    摘要:继续跟踪前,先看看类的方法组件初始化时,注册回调函数,确保脚本执行完毕时消息被正确打印。将示例函数的方法改成然后在脚本执行过程中,按下,或者通过命令发送信号,日志都正常输出,表明中的回调函数被正常调用。 转载请注明出处:https://tlanyan.me/trace-log-... 命令行下运行长时间任务,发现Yii2的log组件不能正常输出日志。空闲之余逐步追踪问题,终于发现原因...

    ztyzz 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<