我是Laravel的新人。我已经关注了如何将自定义php库加载到没有dump autoload
的Laravel 4,2的几个线程。到目前为止,我无法或我调用该函数不正确。
到目前为止我所拥有的是:
我提交autoload_classmap.php
我已添加了我的课程
'ImageResize' => $baseDir . '/app/libraries/ImageResize.php',
在档案autoload_static.php
中,我添加了
'ImageResize' => __DIR__ . '/../..' . '/app/libraries/ImageResize.php',
然后在我想要显示这个类的函数的控制器中,我尝试过这样的
public function upload() {
$FmyFunction1 = new \ImageResize();
return View::make('site.admin.upload', [
'FmyFunction1' => $FmyFunction1
]);
}
结果是当我尝试加载/upload
页面时,我遇到了错误:
'未找到'Class'ImageResize''
这个错误是错误的调用类和/或错误是否完全不包含Laravel中的类?谁能帮我?
PS。我不能使用dump autoload的原因是因为我只有ftp访问主机而且我没有SSH ...
答案 0 :(得分:8)
您可以将命名空间添加到自动加载器中,如下所示:
$loader = require 'vendor/autoload.php';
$loader->add('NameSpace', 'Path to directory'); // PSR-0 loading
$loader->addPsr4('NameSpace\\', 'Path to directory'); // PSR-4 loading
Doc:https://getcomposer.org/apidoc/1.0.0/Composer/Autoload/ClassLoader.html#method_add
需要在bootstrap.php文件中添加代码:您需要扩展使用此行加载的基本自动加载器:require __DIR__.'/../vendor/autoload.php';
将此行替换为$loader = require __DIR__.'/../vendor/autoload.php';
,并将自定义命名空间添加到自动装带器。
答案 1 :(得分:-1)
您可以使用PSR-4 autoloading。
使用PSR-0 / PSR-4,在添加或更新课程时,您不必转储自动加载