Ошибка ошибки анализа, которую я не могу решить
Я не знаю, что случилось с моим кодом.
Произошла ошибка:
Parse error: syntax error, unexpected T_NS_SEPARATOR, expecting T_STRING in /home/&&&&/public_html/oscommerce/admin/modules.php(313) : eval()'d code on line 1
Это Line 313
eval('$keys .= ' . $value['set_function'] . "'" . $value['value'] . "', '" . $key . "');");
значения:
$value['set_function']
содержит tep_cfg_select_option(array('Live', 'Sandbox'),
$value['value']
содержит Live
$key
содержит CONFIGURATION_PAYPAL
Ответы
Ответ 1
Вы абсолютно уверены, что хотите использовать eval()?
Документация PHP для
eval() говорит
Конструкция языка eval() очень опасна, поскольку позволяет выполнение произвольного PHP-кода. Поэтому его использование не рекомендуется. если ты тщательно проверили, что нет другого выбора, кроме как использовать это строить, уделять особое внимание не передавать какие-либо предоставленные пользователем данные в него без должной проверки его заранее.
Ответ 2
Одна из возможных причин заключается в том, что скобки не совпадают. У вас есть 2) в конце, пока у вас есть только один (.
Ответ 3
eval ('$ keys. ='. $value ['set_function']. "'". $value [' value ']. "', '". $key. "');" );
Вы получите что-то вроде
$keys .= set_function'value', 'key');
Я не верю, что верю.
Как насчет добавления (
после $value['set_function'] . "
? Вы не открыли скобку после имени функции.
Другое дело, что ошибка T_NS_SEPARATOR означает, что у вас есть \
где-то там, где этого не должно быть. Per: https://stackoverflow.com/a/6454891/2028547 - см. Значения всех ваших переменных для странных символов.
Ответ 4
Похоже, что все, что находится в $value['set_function']
или $value['value']
или $key
, имеет \
в
их
Попробуйте повторить то, что в eval()
, а не работает eval()
- это позволит вам увидеть код, который пытается запустить PHP.
Ошибка в основном говорит о том, что там, где существует разделитель пространства имен (\
) в странном месте в коде eval()
'd