使用 composer 构建 PHP 框架之引入 Blade 模板引擎 (三)

1,880 阅读1分钟
原文链接: www.36nu.com

上一篇已经构造好了MVC,本篇讲解如何引入Blade模板引擎 XiaoLer/blade

先封装一个视图装载类来装载视图,视图装载器是一个组件,我们把所有组件全部放到一处,本文放在nuf/assists文件夹下。

在开始之前先优化一下代码结构:

将public/index.php 里面的代码分离一部分到初始化文件init.php,新建nuf/init.php:

修改public/index.php为:

下面开始引入Blade模板引擎,修改 composer.json 中的autoload为:

"require":{
    "noahbuscher/macaw": "dev-master",
    "xiaoler/blade":"*"
},
"autoload":{
    "classmap":[
    "app/controllers",
    "app/models",
    "assists"
    ]
}
# composer update

新建 assists/View.php 文件,内容如下:

运行composer dump-autoload,然后就可以在控制器中直接调用这个类了。

修改 controllers/HomeController.php :

make('home', ['a' => 'success!'])->render();
    }
}

将views/home.php重命名为home.blade.php,修改内容为:




    
    home view


{{ $a }}

访问nuf.dev/index.php/home,输出success!,说明配置成功。

注:blade模板引擎是从 Laravel 中抽取的,这是一个独立的模块,不再依赖于 Laravel 的容器或其他任何组件,文档: laravel.com/docs/5.1/bl…