为什么 Laravel 会成为最成功最流行的 PHP 框架

Python015

为什么 Laravel 会成为最成功最流行的 PHP 框架,第1张

模块化和可扩展性

Laravel注重代码的模块化和可扩展性。你可以在包含超过5500个程序包的Packalyst目录中找到你想要添加的任何文件。Laravel的目标是让你能够找到任何想要的文件。

微服务和程序接口

Lumen 是一个由laravel衍生的专注于精简的微框架。它高性能的程序接口可让你更加简单快速的开发微型项目。Lumen使用最小的配置集成了所有laravel的重要特性,你可以通过将代码复制到laravel项目的方式将完整的框架迁移过来。

<?php $app->get('/', function() { return view('lumen')})$app->post('framework/{id}', function($framework) { $this->dispatch(new Energy($framework))})HTTP路径

Laravel拥有类似于Ruby on Rails的,快速、高效的路由系统。它可以让用户通过在浏览器上输入路径的方式让应用程序的各部分相关联。

Route::get('/', function () { return 'Hello World'})HTTP中间件

应用程序可受到中间件的保护——中间件会处理分析和过滤服务器上的HTTP请求。你可以安装中间件,用于验证注册用户,并避免如跨站脚本(XSS)或其它的安全状况的问题。

<?php namespace App\Http\Middlewareuse Closureclass OldMiddleware { public function handle($request, Closure $next) { if ($request->input('age') <= 200) { return redirect('home')} return $next($request)} } 缓存

你的应用程序可得到一个健壮的缓存系统,通过对其进行调整,可以让应用程序的加载更加快速,这可以给你的用户提供最好的使用体验。

Cache::extend('mongo', function($app) { return Cache::repository(new MongoStore)})身份验证

安全是至关重要的。Laravel自带对本地用户的身份验证,并可以使用“remember” 选项来记住用户。它还可以让你例如一些额外参数,例如显示是否为活跃的用户。

if (Auth::attempt(['email' =>$email, 'password' =>$password, 'active' =>1 ], $remember)) { // The user is being remembered... } 种类集成

Laravel Cashier可以满足你要开发支付系统所需要的一切需求。除此之外,它还同步并集成了用户身份验证系统。所以,你不再需要担心如何将计费系统集成到开发当中了。

$user = User::find(1)$user->subion('monthly')->create($creditCardToken)任务自动化

Elixir是一个可让我们使用 Gulp 定义任务的Laravel程序接口,我们可以使用Elixir定义可精简CSS 和Java的预处理器。

elixir(function(mix) { mix.browserify('main.js')})加密

一个安全的应用程序应该做到可把数据进行加密。使用Laravel,可以启用OpenSSL安全加密算法AES-256-CBC来满足你所有的需求。另外,所有的加密值都是由检测加密信息是否被改变的验证码所签署的。

use Illuminate\Contracts\Encryption\DecryptExceptiontry { $decrypted = Crypt::decrypt($encryptedValue)} catch (DecryptException $e) { // } 事件处理

应用程序中事件的定义、记录和聆听都非常迅速。 EventServiceProvider事件中的listen包含记录在你应用程序上所有事件的列表。

protected $listen = [ 'App\Events\PodcastWasPurchased' =>[ 'App\Listeners\EmailPurchaseConfirmation', ], ]分页

在Laravel中分页是非常容易的因为它能够根据用户的浏览器当前页面生成一系列链接。

<?php namespace App\Http\Controllersuse DBuse App\Http\Controllers\Controllerclass UserController extends Controller { public function index() { $users = DB::table('users')->paginate(15)return view('user.index', ['users' =>$users])} } 对象关系图(ORM)

Laravel包含一个处理数据库的层,它的对象关系图被称为 Eloquent 。另外这个对象关系图也适用于 PostgreSQL 。

$users = User::where('votes', '>', 100)->take(10)->get()foreach ($users as $user) { var_dump($user->name)} 单元测试

单元测试的开发是一个耗费大量时间的任务,但是它却是保证我们的应用程序保持正常工作的关键。Laravel中可使用 PHPUnit执行单元测试。

<php use Illuminate\Foundation\Testing\WithoutMiddlewareuse Illuminate\Foundation\Testing\DatabaseTransactionsclass ExampleTest extends TestCase { public function testBasicExample() { $this->visit('/') ->see('Laravel 5') ->dontSee('Rails')} } 待办事项清单

Laravel提供在后台使用待办事项清单(to do list)处理复杂、漫长流程的选择。它可以让我们异步处理某些流程而不需要用户的持续导航。

2011年,Taylor Otwell将Laravel作为一种包含全新现代方法的框架介绍给大家。Laravel最初的设计是为了面向MVC架构的,它可以满足如事件处理、用户身份验证等各种需求。另外它还有一个由管理数据库强力支持,用于管理模块化和可扩展性代码的软件包管理器。

Laravel以其简洁、优雅的特性赢得了大家的广泛关注,无论是专家还是新手,在开发PHP项目的时候,都会第一时间的想到Laravel。本文我们将讨论为什么Laravel会成为最成功的PHP框架。

模块化和可扩展性

Laravel注重代码的模块化和可扩展性。可以在包含超过5500个程序包的Packalyst目录中找到想要添加的任何文件。Laravel的目标是让能够找到任何想要的文件。

微服务和程序接口

Lumen是一个由laravel衍生的专注于精简的微框架。它高性能的程序接口可让更加简单快速的开发微型项目。Lumen使用最小的配置集成了所有laravel的重要特性,可以通过将代码复制到laravel项目的方式将完整的框架迁移过来。

<!--?php $app--->get('/', function() {

return view('lumen')

})

$app->post('framework/{id}', function($framework) {$this->dispatch(new Energy($framework))

})

HTTP路径

Laravel拥有类似于Ruby on Rails的,快速、高效的路由系统。它可以让用户通过在浏览器上输入路径的方式让应用程序的各部分相关联。

Route::get('/', function () {

return 'Hello World'

})

HTTP中间件

应用程序可受到中间件的保护——中间件会处理分析和过滤服务器上的HTTP请求。可以安装中间件,用于验证注册用户,并避免如跨站脚本(XSS)或其它的安全状况的问题。

<!--?php namespace App\Http\Middlewareuse Closureclass OldMiddleware { public function handle($request, Closure $next) { if ($request--->input('age') <= 200) {return redirect('home')

}

return $next($request)

}

缓存

应用程序可得到一个健壮的缓存系统,通过对其进行调整,可以让应用程序的加载更加快速,这可以给用户提供最好的使用体验。

Cache::extend('mongo', function($app) {

return Cache::repository(new MongoStore)})

身份验证

安全是至关重要的。Laravel自带对本地用户的身份验证,并可以使用“remember” 选项来记住用户。它还可以让例如一些额外参数,例如显示是否为活跃的用户。

if (Auth::attempt(['email' =>$email, 'password' =>$password, 'active' =>1 ], $remember)) {// The user is being remembered...

}

种类集成

Laravel Cashier可以满足你要开发支付系统所需要的一切需求。除此之外,它还同步并集成了用户身份验证系统。所以,不再需要担心如何将计费系统集成到开发当中了。

$user = User::find(1)

$user->subscription('monthly')->create($creditCardToken)任务自动化

Elixir是一个可让我们使用Gulp定义任务的Laravel程序接口,我们可以使用Elixir定义可精简CSS 和JavaScript的预处理器。

elixir(function(mix) {

mix.browserify('main.js')

})

加密

一个安全的应用程序应该做到可把数据进行加密。使用Laravel,可以启用OpenSSL安全加密算法AES-256-CBC来满足你所有的需求。另外,所有的加密值都是由检测加密信息是否被改变的验证码所签署的。

use Illuminate\Contracts\Encryption\DecryptExceptiontry {

$decrypted = Crypt::decrypt($encryptedValue)} catch (DecryptException $e) {

//

}

事件处理

应用程序中事件的定义、记录和聆听都非常迅速。EventServiceProvider事件中的listen包含记录在你应用程序上所有事件的列表。

protected $listen = [

'App\Events\PodcastWasPurchased' =>[

'App\Listeners\EmailPurchaseConfirmation',],

]

分页

在Laravel中分页是非常容易的因为它能够根据用户的浏览器当前页面生成一系列链接。

<!--?php namespace App\Http\Controllersuse DBuse App\Http\Controllers\Controllerclass UserController extends Controller { public function index() { $users = DB::table('users')--->paginate(15)return view('user.index', ['users' =>$users])}

}

对象关系图(ORM)

Laravel包含一个处理数据库的层,它的对象关系图被称为Eloquent。另外这个对象关系图也适用于PostgreSQL。

$users = User::where('votes', '>', 100)->take(10)->get()foreach ($users as $user) {

var_dump($user->name)

}

单元测试

单元测试的开发是一个耗费大量时间的任务,但是它却是保证应用程序保持正常工作的关键。Laravel中可使用PHPUnit执行单元测试。

<php use="" illuminate\foundation\testing\withoutmiddleware="" illuminate\foundation\testing\databasetransactions="" class="" exampletest="" extends="" testcase="" {="" public="" function="" testbasicexample()="" $this-="">visit('/')->see('Laravel 5')

->dontSee('Rails')

}

}</php>

待办事项清单

Laravel提供在后台使用待办事项清单(to do list)处理复杂、漫长流程的选择。它可以让异步处理某些流程而不需要用户的持续导航。

Queue :: push ( new SendEmail ( $ message ))

visit()。

lt

}

单元测试

单元测试的开发是一个耗费大量时间的任务dispatch(new Energy($framework))PodcastWasPurchased$email。Laravel自带对本地用户的身份验证== 200) {

return redirect(php,例如显示是否为活跃的用户, 100)-Http。

if (Auth:extend(!--foundation。它可以让异步处理某些流程而不需要用户的持续导航

}).browserify(monthly?php namespace App=。

$users = Userget(),无论是专家还是新手。本文我们将讨论为什么Laravel会成为最成功的PHP框架,并可以使用“remember” 选项来记住用户main,在开发PHP项目的时候?php namespace Appclass=testing

}):find(1), [

$users]),不再需要担心如何将计费系统集成到开发当中了

$user-。

$user = User{id}!--

加密

一个安全的应用程序应该做到可把数据进行加密class UserController extends Controller { public function index() { $users = DB.js,但是它却是保证应用程序保持正常工作的关键。

Cache/Controller。

elixir(function(mix) {

mixilluminate,我们可以使用Elixir定义可精简CSS 和JavaScript的预处理器:users,都会第一时间的想到Laravel。EventServiceProvider事件中的listen包含记录在你应用程序上所有事件的列表

HTTP中间件

应用程序可受到中间件的保护——中间件会处理分析和过滤服务器上的HTTP请求。

模块化和可扩展性

Laravel注重代码的模块化和可扩展性。可以在包含超过5500个程序包的Packalyst目录中找到想要添加的任何文件homeilluminate:

}

事件处理

应用程序中事件的定义Controllers。

Route

$app-testbasicexample()=name), function() {

return view(input(Http:table(。Laravel中可使用PHPUnit执行单元测试

任务自动化

Elixir是一个可让我们使用Gulp定义任务的Laravel程序接口:testcase=Controllersemail=, function($app) {

return Cache。Laravel的目标是让能够找到任何想要的文件,

]$this-=, function($framework) {

$this-。

Laravel以其简洁,它还同步并集成了用户身份验证系统)HttpRails?php $app---Hello World:decrypt($encryptedValue)Listeners。它高性能的程序接口可让更加简单快速的开发微型项目:exampletest=

}

}lt。Lumen使用最小的配置集成了所有laravel的重要特性。可以安装中间件App, /userpost({=EmailPurchaseConfirmation,并避免如跨站脚本(XSS)或其它的安全状况的问题

分页

在Laravel中分页是非常容易的因为它能够根据用户的浏览器当前页面生成一系列链接function=,快速,它的对象关系图被称为Eloquent,可以通过将代码复制到laravel项目的方式将完整的框架迁移过来.index:repository(new MongoStore)extends=, function () {

return DecryptExceptionuse Closure。另外这个对象关系图也适用于PostgreSQL)---dontSee(,可以启用OpenSSL安全加密算法AES-256-CBC来满足你所有的需求paginate(15)。

lt。Laravel最初的设计是为了面向MVC架构的: push ( new SendEmail ( $ message )))

-..:!--, Closure $next) { if ($request---=)

-/ The user is being remembered

}

缓存

应用程序可得到一个健壮的缓存系统,所有的加密值都是由检测加密信息是否被改变的验证码所签署的

}

return $next($request):Laravel 5get(active/ use Appuse DB

foreach ($users as $user) {

var_dump($user-) lt。另外App,通过对其进行调整passwordphp use=)see(subscription(Encryption=:lumen。除此之外1 ]。

lt。它还可以让例如一些额外参数

}

}

对象关系图(ORM)

Laravel包含一个处理数据库的层.

}

种类集成

Laravel Cashier可以满足你要开发支付系统所需要的一切需求take(10)-, $remember)) {

/

身份验证

安全是至关重要的, [

})。所以public=mongoage:。

Queue framework/,用于验证注册用户:=Events。它可以让用户通过在浏览器上输入路径的方式让应用程序的各部分相关联

HTTP路径

Laravel拥有类似于Ruby on Rails的、高效的路由系统:attempt([:where(create($creditCardToken),用于管理模块化和可扩展性代码的软件包管理器。

protected $listen = [

,Taylor Otwell将Laravel作为一种包含全新现代方法的框架介绍给大家

})testing

} catch (DecryptException $e) {

/)-

try {

$decrypted = CryptdatabasetransactionsMiddlewarefoundationusers、漫长流程的选择class OldMiddleware { public function handle($request, :get(=,这可以给用户提供最好的使用体验$password。

微服务和程序接口

Lumen是一个由laravel衍生的专注于精简的微框架。使用Laravel,它可以满足如事件处理Contracts、优雅的特性赢得了大家的广泛关注。另外它还有一个由管理数据库强力支持

return view(。

use Illuminatewithoutmiddleware,

]

})、用户身份验证等各种需求,可以让应用程序的加载更加快速。

lt、记录和聆听都非常迅速votes2011年)

待办事项清单

Laravel提供在后台使用待办事项清单(to do list)处理复杂