獨立使用 Laravel Blade Template Engine (Illuminate\view)

這次我們利用ServiceProvider來設定Laravel Blade Engine

利用composer安裝 illuminate/view

composer require illunimate/view

config.php

require __DIR__.'/vendor/autoload.php';

use Illuminate\Container\Container;
use Illuminate\Events\Dispatcher;
use Illuminate\Filesystem\Filesystem;
use Illuminate\Support\Facades\Facade;
use Illuminate\Support\Facades\View;
use Illuminate\Support\Fluent;
use Illuminate\View\ViewServiceProvider;

$app = new Container();
$app['events'] = new Dispatcher();
$app['config'] = new Fluent();
$app['files'] = new Filesystem();

// 設定view資料夾
$app['config']['view.paths'] = [__DIR__.'/views/'];
// 設定快取資料夾
$app['config']['view.compiled'] = __DIR__.'/compiled/';

// 利用ServiceProvider來初始化View
$serviceProvider = new ViewServiceProvider($app);
// 註冊
$serviceProvider->register();
// boot
$serviceProvider->boot();

Facade::setFacadeApplication($app);

// 設Facade View Alias方便使用
class_alias(View::class, 'View');

views/test.blade.php

@foreach ([1,2,3] as $v)
    {{ $v }}
@endforeach

index.php

require __DIR__.'/config.php';

echo View::make('test')->render();

完整檔案在Github

本帖已被设为精华帖!
本帖由 Summer 于 7年前 加精
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 2
Summer

:+1:

7年前 评论

可以写的 V8 版本的代码吗?这个是 V5 版本的,用最新 V8 测试不成功。

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!