Это совершенно сбивает меня с толку, поскольку я никогда раньше этого не испытывал. Моя локальная среда - 5.6.7. PHP и мой производственный сервер (общий хостинг) в настоящее время работают с 5.3.29, и кажется, что этот встроенный скрипт вызывает проблемы в рабочей среде, но работает без каких-либо ошибок, уведомлений или даже предупреждений на моем локальном компьютере.PHP встроенное условие, не работающее в PHP 5.3.29, но работающее в 5.6.7
<?php
$account_record['User']['date_of_birth'] = '';
$request_data['User']['dob_data'] = '';
$dob_date = (!empty($account_record['User']['date_of_birth'])?explode('-',$account_record['User']['date_of_birth'])[2]:(!empty($request_data['User']['dob_date'])?$request_data['User']['dob_date']:''));
Это ошибка я получаю на PHP 5.3.29
Ошибка синтаксического анализа: ошибка синтаксиса, неожиданный '[' в [...] [...] на линии
Я не могу понять, что не так. Я установил ссылку на песочницу ниже, и я смог воспроизвести проблему там. Если я выбираю 5.3.29, это не сработает, но когда я выбираю say, он начинает работать с PHP 5.4, он работает. http://sandbox.onlinephpfunctions.com/code/96decf9191975c9948d346d183f6d443f0beeeaf
Любая помощь будет оценена по достоинству. Благодарю.
Нет необходимости делать выражения такими же читаемыми, как ваши. – mario