从 4.1 升级到 4.2
最后更新于:2022-04-01 15:03:01
## PHP 5.4+
Laravel 4.2 需要 `PHP 5.4.0` 以上。
## 默认加密
增加一个新的 `cipher` 选项在你的 `app/config/app.php` 设置文件中。其选项值应为 `MCRYPT_RIJNDAEL_256`。
~~~
'cipher' => MCRYPT_RIJNDAEL_256
~~~
该设置可用于设置所使用的 Laravel 加密工具的默认加密方法。
> 附注: 在 Laravel 4.2,默认加密方法为MCRYPT_RIJNDAEL_128 (AES),被认为是最安全的加密。必须将加密改回MCRYPT_RIJNDAEL_256 来解密在 Laravel <= 4.1 下加密的 cookies/values
## 软删除模型现在改使用特性
如果你在模型下有使用软删除,现在 `softDeletes` 的属性已经被移除。你现在要使用 `SoftDeletingTrait` 如下:
~~~
use Illuminate\Database\Eloquent\SoftDeletingTrait;
class User extends Eloquent {
use SoftDeletingTrait;
}
~~~
你一样必须手动增加 `deleted_at` 字段到你的 `dates` 属性中:
~~~
class User extends Eloquent {
use SoftDeletingTrait;
protected $dates = ['deleted_at'];
}
~~~
而所有软删除的 API 使用方式维持相同。
> 附注: SoftDeletingTrait 无法在基本模型下被使用。他只能在一个实际模型类别中使用。
## 视图 / 分页 / 环境 类别改名
如果你直接使用 `Illuminate\View\Environment` 或 `Illuminate\Pagination\Environment` 类别,请更新你的代码将其改为参照 `Illuminate\View\Factory` 和 `Illuminate\Pagination\Factory`。改名后的这两个类别更可以代表他们的功能。
## Additional Parameter On Pagination Presenter
如果你扩展了 `Illuminate\Pagination\Presenter` 类别,抽象方法 `getPageLinkWrapper` 参数表变成要加上 `rel` 参数:
~~~
abstract public function getPageLinkWrapper($url, $page, $rel = null);
~~~
## Iron.Io Queue 加密
如果你使用 `Iron.io queue` 驱动,你将需要增加一个新的 `encrypt` 选项到你的 queue 设置文件中:
~~~
'encrypt' => true
~~~