У вас не может быть пространства имен, начинающегося с цифры.
Пространства имен следуют тем же базовым правилам для имен переменных :
Допустимая переменная имя начинается с буквы или подчеркивания , за которым следует любое количество букв, цифр или подчеркиваний
(выделено мной).
Таким образом, ваше объявление
namespace App\Scripts\Providers\1
в основном недействительно .
С этого момента все ставки выключены.
Сначала измените ваше пространство имен на допустимый идентификатор (и я бы посоветовал выбрать что-то более разумное и узнаваемое, чем числа , у вас могут быть описательные имена и просто нет причин не делать этого):
namespace App\Scripts\Providers\GroupWhatever
ЛогическиВам придется переименовать папку, в которой находится этот файл.Раньше это было
app/Scripts/Providers/1/Scrape.php
, поэтому переименуйте этот каталог в
app/Scripts/Providers/GroupWhatever/Scrape.php
(В обоих случаях замените GroupWhatever
на то, что имеет смысл для вашего приложения и домена).
С этого момента, если класс \App\Models\Providers
существует в app/Models/Providers.php
, он должен работать.
Важно:
Еще одна проблема, которая может существовать, заключается в том, чтоочень ясно, что такое Scripts/Scrape.php
или как оно называется.
Это должно работать , если вы выполняете Scrape.php
изнутри Laravel, вызывая контроллер или консольное приложение Laravel.
Если вы вызываете этот скрипт напрямую (например, с помощью php app/Scripts/Providers/1/Scrape.php
(или исправленного app/Scripts/Providers/GroupWhatever/Scrape.php
)), это просто не будет работать, поскольку логика автозагрузки вообще не запускается.
Есливы выполняете свой скрипт вручную, поверх вышеуказанных изменений вам нужно включить скрипт автозагрузки composer, который находится по адресу vendor/autoload.php
.
По сути, добавьте эту строку ближе к началувашего Scrape.php
:
require_once dirname( __DIR__ ) . '/../../../vendor/autoload.php';
(я думаю, чтоСоответствующее количество сегментов пути go-up-one-dir, но вы должны убедиться, что он совпадает с правильным путем в вашей установке).
Как только это произойдет, автозагрузчик будет запущен, и классыбыть найденным.