Получить значение массива

111
30 июля 2019, 21:00

Переносила приложение на новый сервер и заметила такую штуку: при использовании конструкции такого вида

$param=preg_split('/:/', 'имя:значение')[1];

возникает ошибка

Parse error: syntax error, unexpected '['

если изменить конструкцию на

$param=preg_split('/:/', 'имя:значение');
$param = $param[1];

то ошибки нет и код отрабатывает правильно. На старом сервере первая конструкция отрабатывала без ошибок. И на новом сервере и на старом стоят Apache 2.2 + PHP 5.3.6.

Подскажите, пожалуйста, какие настройки сервера (думаю, что причина в них) могли вызвать такую реакцию?

Answer 1

И на новом сервере и на старом стоят Apache 2.2 + PHP 5.3.6.

Это неправда

На старом сервере версия была по меньшей мере 5.4, и, как следствие, поддерживала разыменование массивов

Следует отметить, что 5.3.6 устарела и перестала поддерживаться десять лет назад, а 5.4 - восемь. И этот факт как бы намекает, что пора бы немного обновиться.

READ ALSO
Выбор каталога из проводника

Выбор каталога из проводника

Проект написан на laravel, на странице необходимо создать кнопку “задать папку” — при клике, открывается проводникВ проводнике пользователь...

119
Yii2 не работает ajax validation

Yii2 не работает ajax validation

Не могу разобраться с валидацией формы при отправке ajaxУ меня есть виджет с формой, во вьюхе которого находится ActiveForm

111