#php #laravel #arrow-functions
#php #laravel #стрелка-функции
Вопрос:
привет, я хочу использовать это в laravel
Route::get('/a',fn() => view('a'));
вместо :
Route::get('/a', function () {
return view('a');
});
но это не работает
Комментарии:
1. Какую версию pop вы используете? Функции стрелки — это PHP 7.4
2. «но это не работает», постарайтесь быть более конкретным. Люди здесь тоже не знают, и мы не можем сказать, поскольку это ваша среда и ваш код. Постарайтесь разъяснить это другим, чтобы они могли помочь вам быстрее и эффективнее. Если что-то не работает, то в большинстве случаев вы получаете сообщение об ошибке. Или вы можете отладить значения и выполнить сравнения до / после или is / should.
Ответ №1:
Я попробовал Route::get('/a',fn() => view('welcome'));
и все сработало нормально.
Вы проверили, что представление ‘a’ существует?
Приведите более подробную информацию об ошибке. Возможно, что-то еще не работает.
Комментарии:
1. спасибо, у меня есть представление ‘a’, возможно, это версия php, которая у меня есть ~ PHP 7.3.12-1 (cli) (собран: 28 ноября 2019 07:34:08), и синтаксическая ошибка { «сообщение»: «синтаксическая ошибка, неожиданная ‘=>’ (T_DOUBLE_ARROW), ожидающая ‘)'», }
2. Ну, как упоминалось выше, вам нужен PHP 7.4 (именно тогда в язык были добавлены функции стрелки), так что это объясняет.
3. Это, должно быть, ваша проблема, поскольку функции стрелки были включены в PHP 7.4