how to upgrade yii1 to yii3 (using yii3 in yii1 project)

类似yii1 升级到yii2

可以实现yii1和yii3共存,可以使用yii3(可能不是全部功能)来开发,这样就直接越过yii2了,慢慢熟悉一下yii3,免得把yii2了解差不多,发现又过时了

1.先用composer 安装yii3框架,然后把yii1的框架文件移为/vendor/yiisoft/yii1,看起来结构清晰一些,

2.在yii1原来项目protected/components/下面建立yii.php

重点就是把加载/vendor下面的类自动加载,

并实现

class Yii extends yii\helpers\BaseYii {

//yii1 YiiBase.php的内容

}

里面有两个冲突的函数,可以把yii1的函数名改一下,应该不怎么影响

 

Yii扩展yii3的类

3.更改index.php文件

require_once(dirname(__FILE__).’/protected/components/yii.php’);
// Yii 2 应用的配置文件
$yii2Config = require_once(dirname(__FILE__).’/protected/config/yii2/web.php’);

new yii\web\Application($yii2Config); // Do NOT call run()

// Yii 1 应用的配置文件
$yii1Config = require_once(dirname(__FILE__).’/protected/config/main.php’);
Yii::createWebApplication($yii1Config)->run();

这样就差不多可以使用Yii3的一些功能了,具体的使用我也不怎么懂,试试吧,

原创内容,