Я пытаюсь разбить длинный файл на более мелкие куски, поэтому я создал src
папку, и я пытаюсь ссылаться на нее из основного Extension.php
файл (который загружается и работает нормально, кстати).
Итак, я добавляю src
папка в массив автозагрузки psr-4:
"psr-4": {
"Bolt\\Extension\\AndyJessop\\SurveyMonkey\\": [
"",
"src/"]
}
Я создаю Test.php
файл внутри src
:
<?php
namespace Bolt\Extension\AndyJessop\SurveyMonkey;
class Test
{
public function test() {
return 'success';
}
}
в Extension.php
файл (который находится в том же пространстве имен), у меня есть эта функция, которая называется:
use Bolt\Extension\AndyJessop\SurveyMonkey\Test;
public function testing(){
return Test::test();
}
Но я получаю следующую ошибку:
Error: Class 'Bolt\Extension\AndyJessop\SurveyMonkey\Test' not found
File: extensions/local/andyjessop/surveymonkey/Extension.php
Сначала беги composer update
или же composer dump-autoload
создать систему автозагрузки.
Далее, убедитесь, что вы включили (require_once предпочтительно) автозагрузку в верхней части ваших точек входа:
require_once __DIR__ . '/path/to/vendor/autoload.php';
N.B .: если у вас PHP 5.3 или ниже, замените __DIR__
с dirname(__FILE__)
,
Других решений пока нет …