在Laravel中加载自定义php文件,而无需作曲家转储自动加载


Loading custom php file in Laravel without composer dump-autoload

我是拉拉维尔的新人。我已经关注了几个线程,了解如何在没有dump autoload的情况下将自定义 php 库加载到 Laravel 4,2 中。到目前为止,我无法或调用函数不正确。

到目前为止,我所拥有的是:

  1. 我在添加课程autoload_classmap.php提交文件

    'ImageResize' => $baseDir . '/app/libraries/ImageResize.php',

  2. 在我添加的文件autoload_static.php

    'ImageResize' => __DIR__ . '/../..' . '/app/libraries/ImageResize.php',

然后在我的控制器中,我想显示这个类,我已经尝试过了

public function upload() {
$FmyFunction1 = new 'ImageResize(); 
    return View::make('site.admin.upload', [
        'FmyFunction1' => $FmyFunction1
    ]);
}

结果是当我尝试加载页面时/upload出现错误:

"找不到类'图像调整大小'

此错误是由于错误调用类和/或根本没有正确包含Laravel中的类而导致的错误吗?谁能帮我?

附言。我不能使用转储自动加载的原因是因为我只有对主机的 ftp 访问权限,而我没有 SSH...

您可以像这样将命名空间添加到自动加载器中:

$loader = require 'vendor/autoload.php';
$loader->add('NameSpace', 'Path to directory'); // PSR-0 loading
$loader->addPsr4('NameSpace''', 'Path to directory'); // PSR-4 loading

文档 : https://getcomposer.org/apidoc/1.0.0/Composer/Autoload/ClassLoader.html#method_add


代码需要添加到引导程序.php文件中:您需要扩展加载此行的基本自动加载器:require __DIR__.'/../vendor/autoload.php';

将此行替换为 $loader = require __DIR__.'/../vendor/autoload.php';并将自定义命名空间添加到自动加载器。

您可以使用 PSR-4 自动加载。

使用 PSR-0/PSR-4 ,您不必在添加或更新类时转储自动加载。