我使用的是slim框架、composer和psr-4自动加载。
这是在作曲家:
"Shorty\":"app/Shorty"
注意:我在"Shorty\":"app/Shorty/Models"
上也尝试了上述操作
董事会结构:app/Shorty/Models/Trap.php
内部Trap.php
:
namespace ShortyModels;
use IlluminateDatabaseEloquentModel as Eloquent;
class Trap{
#code here
}
在我的路线上:
$users=Trap::leftJoin('users', function($join){
我得到:类"陷阱"未找到
我做错了什么?
如果类名是正确的,则不会收到以下错误消息:
Class 'Trap' not found
但是这个
Class 'ShortyModelsTrap' not found
没有提到完全限定的类名,包括它的名称空间告诉我,缺少该类的代码既没有namespace
语句,也没有使用use
导入来导入这个"陷阱"类。
或者更准确地说:
此代码将抱怨缺少"Trap"类。
Trap::leftJoin();
此代码会抱怨缺少"Shorty\Models\Trap"类。
ShortyModelsTrap::leftJoin();
以及这个:
use ShortyModelsTrap;
Trap::leftJoin();
或者这个:
namespace ShortyModels;
Trap::leftJoin();
当PHP抱怨某个类不存在时,它总是在别名、相对名称空间间接寻址等后面显示该类的完全求值的最终名称。