Laravel 5.1 升级到 5.7,你需要注意的

欢迎可爱善良的小姐姐和小哥哥们

从laravel 5.1 升级到5.7,有一些需要修改和升级的地方,这里我总结了一下,请多多请教

lists 函数 换成 pluck

5.1中:$users = User::whereIn('id', '>', '5')->lists('id')->toArray();

5.7中:$users = User::whereIn('id', '>', '5')->pluck('id')->toArray();

view 函数中的 “.” 更换成 “::”

5.1中:return view('personal.index', compact('users'));

5.7中:return view('personal::index', compact('users'));

first和last函数

$user = User::where('id', '<', 5)->get();
5.1中:$userInfo = $user->first(function ($key, $item) { return $item['id'] == 5; }); // 后者可省略

5.7中:$userInfo = $user->first(function ($item, $key) { return $item['id'] == 5; });// 后者可省略

(备注:last函数同first)

模板中的 or 去掉,可以改成“?:” 或者 其他方式

$user = User::where('id', '<', 5)->get();
5.1中:{{ $userInfo->real_name or '' }}

5.7中:{{ $userInfo->real_name ?: '' }}

laravel 5.7使用的easywechat ,发送模板消息的方式需要更改

$config = [
'app_id' => 'wx7c65eb24a8fbb19f', // AppID
'secret' => '7b0065e65d3dd02e0f61d6c8fc8', // AppSecret
'token' => 'wechat', // Token
'ace_key' => 'yw5MzAQsfbRpBrdQ3X4SjUj6cFQc43gCRzAuW' // EncodingAESKey
];

laravel 5.1 中:

$wechat_app = new \EasyWeChat\Foundation\Application($config);
$notice = $wechat_app->notice;
$result = $notice->send([
'touser' => $openid,
'template_id' => 'jNZPRlwUp7s4fcT_aAVNH0yjf9Qssbe-kaEkPW1dHYg',
'url' => $url,
'data' => [
'first' => $first,
'keyword1' => $keyword1,
'remark' => $remark
]
]);  

laravel 5.7 中:

$wechat_app = Factory::officialAccount($config); //调用方式更改
$result = $wechat_app->template_message->send([ //发送方式更改
'touser' => $openid,
'template_id' => 'jNZPRlwUp7s4fcT_aAVNH0yjf9Qssbe-kaEkPW1dHYg',
'url' => $url,
'data' => [
'first' => $first,
'keyword1' => $keyword1,
'remark' => $remark
]
]);

laravel5.7中的Validator中的日期匹配规则

laravel 5.1 中:

$base_rule = [
        'type' => 'required|integer|between:0,5',
        'time' => 'required|date_format:yy-m-d H:i',
];

laravel 5.7 中:

$base_rule = [
        'type' => 'required|integer|between:0,5',
        'time' => 'required|date_format:Y-m-d H:i', //此处有更改
];

laravel5.7 升级之后,未传值的被request直接处理了null,需要注意

-------------------结束

《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!