Laravel 5的合同:深入研究建築改進和帶有Twig
的實際應用 Laravel 5
提出了重要的建築增強:合同包。 本文探討了這種變化背後的理由,並通過用Symfony Twig替換Laravel的刀片模板引擎,利用合同的力量來證明實用的用例。
切換到其他服務(例如,粉絲)只需要更改綁定:
服務,請實現
>合同。$this->app->bind('App\Contracts\EventPusher', 'App\Services\PusherEventPusher');
使用合同用樹枝替換刀片:
$this->app->bind('App\Contracts\EventPusher', 'App\Services\FanoutEventPusher');
Illuminate/Mail
1。軟件包定義(composer.json):IlluminateContractsMail
2。查看服務提供商(twigviewserviceprovider.php):
此提供商在Laravel的服務容器中註冊樹枝加載程序和環境。
3。查看工廠(twigfactory.php):
{ "name": "whyounes/laravel5-twig", "description": "Twig for Laravel 5", "authors": [ { "name": "RAFIE Younes", "email": "younes.rafie@gmail.com" } ], "require": { "twig/twig": "1.18.*" }, "autoload": { "psr-0": { "RAFIE\": "src/" } } }
這個工廠實現,並使用樹枝處理查看創建和渲染。
4。查看實現(twigview.php):// ... (Provider code as in original example) ...
此類實現,充當了樹枝視圖的容器,與
進行交互
IlluminateContractsViewFactory
// ... (Factory code as in original example) ...
> 註冊 現在您可以使用Twig模板: 一個簡單的樹枝模板:
結論: 常見問題(常見問題解答): (原始輸入的常見問題解答部分已經寫得很好且全面。 以上是使用Laravel合同來建立Laravel 5 Twig套餐的詳細內容。更多資訊請關注PHP中文網其他相關文章!TwigViewServiceProvider
並評論默認Laravel視圖提供商:$this->app->bind('App\Contracts\EventPusher', 'App\Services\PusherEventPusher');
$this->app->bind('App\Contracts\EventPusher', 'App\Services\FanoutEventPusher');
{
"name": "whyounes/laravel5-twig",
"description": "Twig for Laravel 5",
"authors": [
{
"name": "RAFIE Younes",
"email": "younes.rafie@gmail.com"
}
],
"require": {
"twig/twig": "1.18.*"
},
"autoload": {
"psr-0": {
"RAFIE\": "src/"
}
}
}