yii 2 相比yii 1.1.x 有啥变化
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了yii 2 相比yii 1.1.x 有啥变化相关的知识,希望对你有一定的参考价值。
大致思路不会变,开发流程变化也不是很大。有变化的是1、yii2带入的php5.4的特性,引入了namespace解决命名冲突,因此基类不会再C字开头了2、不再所有类都继承自组件Component,而是选择继承object和component(也继承自object,但带有事件功能、以及用于扩展的Behavior功能)3、更加的MVC,原先的view层其实基本算是controller直接include进来的,现在有了view的类用来控制,因此View层在使用Controller带来的参数的方式稍有不同。4、yii2分基本版(看上去和1差不多)和高级版(分前台和后台),高级版更加适合开发大型项目。5、其他的都是细节方面的变化,比如块赋值(基本用于收集表单数据)更加方便了。安装完毕界面就自带bootstrap风格了,等等等等。 参考技术A 大致思路不会变,开发流程变化也不是很大。有变化的是1、yii2带入的PHP5.4的特性,引入了namespace解决命名冲突,因此基类不会再C字开头了2、不再所有类都继承自组件Component,而是选择继承object和component(也继承自object,但带有事件功能、以及用于扩展的Behavior功能)3、更加的MVC,原先的view层其实基本算是controller直接include进来的,现在有了view的类用来控制,因此View层在使用Controller带来的参数的方式稍有不同。4、yii2分基本版(看上去和1差不多)和高级版(分前台和后台),高级版更加适合开发大型项目。5、其他的都是细节方面的变化,比如块赋值(基本用于收集表单数据)更加方便了。安装完毕界面就自带bootstrap风格了,等等等等。YII http缓存
HttpcacheController.php
首先判断的是客户端lastModified,如果最后更新时间没有变化,就不会更新缓存,然后再判断etagSeed
<?php /** * Created by PhpStorm. * Date: 2016/5/25 * Time: 20:17 * http 缓存 */ namespace frontend\controllers; use yii; use yii\web\Controller; class HttpcacheController extends Controller { public function behaviors()//先于action执行,可以用来实现页面缓存 { return [ [ ‘class‘=>‘yii\filters\HttpCache‘,//整个页面缓存 ‘lastModified‘=>function(){ return filemtime(‘hw.txt‘); //return 22221231231231;//可以在每次修改数据时,记入缓存,从缓存读取 }, ‘etagSeed‘=>function(){ $fp = fopen(‘hw.txt‘,‘r‘);//hw.txt在web的根目录下 $title = fgets($fp);//读取第一行 fclose($fp); return $title; //return ‘etagseed2123123‘;//内容 }, ] ]; } public function actionIndex() { $content = file_get_contents(‘hw.txt‘); return $this->renderPartial("index",[‘new‘=>$content]); } }
httpcache/index.php
<?php /** * Created by PhpStorm. * Date: 2016/5/25 * Time: 20:19 */ ?> <div> <div>这是http缓存页面</div> <p><?= $new;?></p> </div>
以上是关于yii 2 相比yii 1.1.x 有啥变化的主要内容,如果未能解决你的问题,请参考以下文章