自定义帮助程序类未在Laravel 4中加载

时间:2013-06-07 08:12:39

标签: php laravel helpers

我在尝试使用Laravel 4中的自定义助手类时遇到了问题。
我在app/libraries创建了一个文件夹,其中有一个自定义类MenuComposer。

app / libraries / folder / MenuComposer.php

<?php
    namespace 'folder\MenuComposer'

    class MenuComposer {
      // Code here
    }

我已编辑composer.json以自动加载app/libraries文件夹并在控制台中运行dump-autoload命令。

composer.json

    "autoload": {
    "classmap": [
        "app/commands",
        "app/controllers",
        "app/models",
        "app/database/migrations",
        "app/database/seeds",
        "app/tests/TestCase.php",
        "app/libraries"
    ]
},

最后我像这样打电话给这个班:

View::composer('layouts.back', 'folder/MenuComposer');

无论我尝试什么,Laravel都会不断回复消息Class 'MenuComposer' not found

有谁在这里知道问题可能是什么?

1 个答案:

答案 0 :(得分:4)

您的命名空间应声明为以下内容而不是引号:

namespace folder\MenuComposer;

Composer dump-autoload然后在&#34; / vendor / composer / autoload_classmap&#34;中生成以下内容:

'folder\\MenuComposer\\MenuComposer' => $baseDir . '/app/libraries/folder/MenuComposer.php'

这表明可以通过以下方式联系课程:

folder/MenuComposer/MenuComposer

希望这有帮助!