我在使用带有大型PHP文件的eval()时遇到问题。
此代码工作正常:
<?php
$str = file_get_contents('short_code.php');
eval($str);
?>
但是
<?php
$str = file_get_contents('long_code.php');
eval($str);
?>
不起作用。我收到以下错误:
PHP Parse error: syntax error, unexpected '4' (T_LNUMBER) in /var/www/html/long_code.php(1516) : eval()'d code
注意:
eval()
的情况下正常工作,但没有
有任何语法错误eval()
时,我从开始/结束文件中删除了<?php
和?>
标记这个问题是由大文件(long_code.php)引起的,还是由其他原因造成的?
答案 0 :(得分:0)
请尝试使用以下代码,并且不要从您获得的开始/结束文件中删除<?php
和?>
标记:
<?php
$str = file_get_contents('long_code.php');
eval('?>'.$str.'<?php;');
?>