W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
LTS,將會提供兩年的bug修復(fù)和三年的安全修復(fù)支持。這些版本將會提供最長時間的支持和維護(hù)。
對于其他通用版本,只提供六個月的bug修復(fù)和一年的安全修復(fù)支持。
Laravel 5.1.11 引入了“開箱即用”的授權(quán)支持!使用簡單的回調(diào)或策略類即可方便地管理應(yīng)用的授權(quán)邏輯,并且授權(quán)動作使用簡單且優(yōu)雅的方法。
想要了解更多信息,請查看授權(quán)文檔。
Laravel 5.1.4 將登錄次數(shù)限制引入框架,更多詳情請參考認(rèn)證限制一節(jié)。
Laravel 5.1 在 5.0 的基礎(chǔ)上繼續(xù)進(jìn)行優(yōu)化和提升,接受PSR-2代碼風(fēng)格,新增事件廣播機(jī)制,中間件參數(shù),Artisan優(yōu)化,等等。
由于PHP 5.4將會在今年9月份“壽終正寢”,并且PHP開發(fā)組不會再提供安全更新,Laravel 5.1 要求PHP5.5.9或更高版本。PHP5.5.9兼容一些最新版本的流行PHP庫如Guzzle和AWS SDK。
Laravel 5.1 是Laravel 第一個長期支持版本,將會提供兩年的bug修復(fù)和安全修復(fù),這是迄今為止,Laravel提供的最大跨度的支持,并且將會持續(xù)為更多的企業(yè)用戶及普通用戶提供穩(wěn)定平滑的支持。
PSR-2代碼風(fēng)格指南已經(jīng)被Laravel框架采取為默認(rèn)風(fēng)格指南,此外,所有代碼生成器已經(jīng)被更新到生成兼容PSR-2語法的代碼。
Laravel文檔的每一個頁面都進(jìn)行了一絲不茍的審查和引人注目的優(yōu)化,所有代碼示例都被審查并且擴(kuò)展到更好的支持上下文相關(guān)性。
在很多現(xiàn)代的web應(yīng)用中,web套接字被用于實現(xiàn)實時的,即時更新的用戶接口,當(dāng)服務(wù)器上的某些數(shù)據(jù)更新后,通常一條消息將會通過websocket連接發(fā)送到客戶端并進(jìn)行處理。
為了幫助你構(gòu)建這樣類型的應(yīng)用,Laravel使得通過websocket連接廣播事件變得簡單可行。廣播Laravel事件允許你在服務(wù)端代碼和客戶端JavaScript框架之間共享相同的事件名稱。
更多關(guān)于事件廣播的內(nèi)容請查看事件一節(jié)。
Laravel 5.1里,中間件可以接受額外的自定義參數(shù),例如,如果你的應(yīng)用需要在執(zhí)行給定的action之前驗證被授予指定“角色”的認(rèn)證用戶,可以創(chuàng)建一個RoleMiddleware來接收角色名稱作為額外參數(shù):
<?php
namespace App\Http\Middleware;
use Closure;
class RoleMiddleware
{
/**
* 運行請求過濾器.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @param string $role
* @return mixed
*/
public function handle($request, Closure $next, $role)
{
if (! $request->user()->hasRole($role)) {
// 跳轉(zhuǎn)...
}
return $next($request);
}
}
中間件參數(shù)可以再定義路由時通過:分隔中間件名稱和參數(shù)名稱來指定,多個參數(shù)可以通過逗號進(jìn)行分隔:
Route::put('post/{id}', ['middleware' => 'role:editor', function ($id) {
//
}]);
更多關(guān)于中間件的內(nèi)容,請查看中間件一節(jié)。
Laravel中內(nèi)置的測試功能獲得了引入注目的提升,多個新方法提供了平滑的,富有變現(xiàn)力的接口和應(yīng)用進(jìn)行交互并測試響應(yīng):
public function testNewUserRegistration(){
$this->visit('/register')
->type('Taylor', 'name')
->check('terms')
->press('Register')
->seePageIs('/dashboard');
}
更多有關(guān)測試的內(nèi)容,請查看測試一節(jié)。
Laravel現(xiàn)在可以通過使用模型工廠附帶一種簡單的方式類創(chuàng)建Eloquent模型存根,模型工廠允許你為Eloquent模型定義一系列默認(rèn)屬性,然后為測試或數(shù)據(jù)庫填充生成模型實例。模型工廠還可以利用強(qiáng)大的PHP擴(kuò)展庫Faker類生成隨機(jī)的屬性數(shù)據(jù)。
$factory->define('App\User', function ($faker) {
return [
'name' => $faker->name,
'email' => $faker->email,
'password' => str_random(10),
'remember_token' => str_random(10),
];
});
更多關(guān)于模型工廠的內(nèi)容,請查看模型工廠一節(jié)。
Artisan命令可以通過使用一個簡單的,類似路由風(fēng)格的“簽名”(提供了一個非常簡單的接口來定義命令行參數(shù)和選項)來定義:
/**
* 命令行的名稱和簽名.
*
* @var string
*/
protected $signature = 'email:send {user} {--force}';
更多關(guān)于Artisan的內(nèi)容,請查看命令行一節(jié)。
為了更好地表達(dá)意圖,app/Commands
目錄被重命名為app/Jobs
,此外,app/Handlers
被合并到app/Listeners
目錄。然而這并不是破壞式改變所以使用Laravel 5.1并不強(qiáng)制要求更新到新的目錄結(jié)構(gòu)。
在之前的Laravel版本中,加密通過PHP擴(kuò)展mcrypt進(jìn)行處理,從5.1開始,加密改由通過PHP的另一個擴(kuò)展openssl進(jìn)行處理,因為該擴(kuò)展較前者而言維護(hù)的更加活躍。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: