我不知道我的代码有什么问题。 有一个错误:
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
答案 0 :(得分:1)
您是否确定要使用eval()?
PHP文档 eval()说
eval()语言结构非常危险,因为它允许 执行任意PHP代码。因此不鼓励使用它。如果你 仔细确认除了使用它之外别无选择 构建时,要特别注意不要传递任何用户提供的数据 没有事先正确验证它就进入它。
答案 1 :(得分:0)
一个可能的原因是括号似乎不匹配。你有2),而你只有一个(。
答案 2 :(得分:0)
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 - 查看奇怪字符的所有变量的值。
答案 3 :(得分:0)
看起来$value['set_function']
或$value['value']
或$key
中有\
的内容
它们
尝试回显eval()
中的内容,而不是运行eval()
- 这将让您看到PHP正在尝试运行的代码。
错误基本上是说在\
代码中的一个奇怪的地方有一个命名空间分隔符(eval()
)