Laravel:使用composer自动加载我自己的文件时找不到类'HTML'

时间:2013-12-25 14:24:28

标签: laravel composer-php

我正在使用Laravel 4.1,我有一个名为html.php的文件,在该文件中我使用HTML ::。现在我在返回$ app之前在bootstrap / start.php中使用此代码加载该文件;

require $app['path.base'].'/app/macros/html.php';

我不知道这是否“好”,所以现在我试图在composer.json中自动加载html.php,用这个:

"files": [
    "app/macros/html.php"
]

但是当我这样做时,我得到了这个错误:

PHP Fatal error:  Class 'HTML' not found in /app/macros/html.php on line 9

第9行看起来像这样:

HTML::macro("flash", function(){

我做错了什么?

当我认为在composer.json中加载html.php比在bootstrap / start.php中加载它更漂亮时,我错了吗?

2 个答案:

答案 0 :(得分:0)

我想你忘了做以下事情:

composer dump-autoload

答案 1 :(得分:0)

你无法从作曲家加载你的宏文件,因为它会在Laravel的东西之前加载它,你还无法访问HTML外观。

放置它的正确位置位于 app / start / global.php 的底部:

require app_path().'/filters.php';
require app_path().'/macros/html.php';