Laravel类自动加载捆绑包

时间:2013-03-22 17:59:43

标签: php namespaces bundle laravel autoloader

我正在为我正在编写的软件包配置自动加载器时遇到一些麻烦。

我有以下课程:

    models / raven_user.php 中的
  • Ravenly\Models\RavenUser ravenly.php
  • 中的
  • Ravenly\Ravenly

我正在尝试执行以下操作:

$exists = call_user_func($class.'::where_crsid', $crsid)->count() > 0;

但是我收到以下错误:

call_user_func() expects parameter 1 to be a valid callback, class 'Ravenly\Models\RavenUser' not found

我已经尝试将$class(在配置文件中设置)设置为"Models\RavenUser",但我得到了同样的错误。我的自动加载器配置如下:

Autoloader::namespaces(array(
    'Ravenly'           =>  Bundle::path('ravenly')
));

我不明白为什么它不起作用......

1 个答案:

答案 0 :(得分:0)

文件名必须与类名匹配。您的文件应命名为ravenuser.php

http://phpmaster.com/autoloading-and-the-psr-0-standard/