Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 05.05.2017 20:39:08

Почему не работает такой простой пример?

Здравствуйте! Почему-то не получается создать класс

<?php
namespace App\Http\Controllers;
use DB;
use App\Http\Controllers\Controller;
class Test extends Controller {}
?>

При запуске файла:
/usr/bin/php /home/******/*****/****/*****/app/testclass.php
PHP Fatal error:  Class 'App\Http\Controllers\Controller' not found in /home/*******/******/****/*****/app/testclass.php on line 5

Process finished with exit code 255
ОС : Ubuntu 16.04 x64
Laravel Framework 5.4.21
PHP 7.0.15
Сервер: Nginx 1.10 as reverse proxy + Apache 2.4

Изменено dart (05.05.2017 20:45:29)

Не в сети

#2 05.05.2017 20:49:35

Re: Почему не работает такой простой пример?

потому что отдельные файлы классов нельзя запускать как самостоятельные пхп-скрипты конечно же. и имя testclass.php не соответствует используемому ларавелем стандарту автозагрузки классов PSR-4. всё есть в доке, не выдумывай велосипедов

Не в сети

#3 05.05.2017 21:17:57

Re: Почему не работает такой простой пример?

Сейчас переместил этот файл в /app/Http/Controllers/ и переименовал в Test.php
Эффекта ноль

Не в сети

#4 05.05.2017 21:40:38

Re: Почему не работает такой простой пример?

а какой эффект-то ты ожидаешь? чтобы его можно было с командной строки запустить? так никогда не будет работать. у фреймворка код контроллера вызывается в результате работы подсистемы маршрутизации запросов

Не в сети

#5 05.05.2017 21:57:39

Re: Почему не работает такой простой пример?

Созданный через artisan контроллер тоже выдаёт эту ошибку

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class SiteController extends Controller
{
    //
}

Мне нужно запускать файл из командной строки для тестирования

Не в сети

#6 05.05.2017 22:14:59

Re: Почему не работает такой простой пример?

Ты из yii пришел? В ларавеле не так, а в вот так: http://ourcodeworld.com/articles/read/2 … aravel-5-3

Не в сети

#7 06.05.2017 14:11:10

Re: Почему не работает такой простой пример?

dart пишет:

Созданный через artisan контроллер тоже выдаёт эту ошибку

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class SiteController extends Controller
{
    //
}

Мне нужно запускать файл из командной строки для тестирования

ты в аритзане сгенерил обычный контроллер. Вероятно тебе нужно сделать Command"у

Не в сети

Подвал раздела