PHP函数eval()包含大量代码

I am having problems using eval() with a large PHP file.

This code is working fine:

<?php
$str = file_get_contents('short_code.php');
eval($str);
?>

but

<?php
$str = file_get_contents('long_code.php');
eval($str);
?>

does not work. I get the following error:

PHP Parse error:  syntax error, unexpected '4' (T_LNUMBER) in /var/www/html/long_code.php(1516) : eval()'d code

Notes:

  1. files short_code.php and long_code.php work fine without eval() and do not have any syntax errors
  2. when I used eval(), I removed <?php and ?> tag from start/end files
  3. short_code.php has 147 Lines and 16036 Characters. long_code.php has 1517 Lines and 181778 Characters.

Is this problem caused by a large file (long_code.php), or by something else?

php
donglu8779
donglu8779 好。没关系。
大约 5 年之前 回复
doushuichong2589
doushuichong2589 我使用了eval(my_function('xxxxxxxxxx....'));xxxxxxx...是加密代码行1516是:PhljYTUG'));
大约 5 年之前 回复
douxu5233
douxu5233 出于病态的好奇心,1516行和周围的线路是什么?
大约 5 年之前 回复
duanjiong2021
duanjiong2021 我不能使用include,我只想使用eval()
大约 5 年之前 回复
dongzhi4073
dongzhi4073 我不知道这个问题,但为什么不包括('long_code.php');?
大约 5 年之前 回复

1个回答

Please , try to use the following code and don't remove <?php and ?> tags from start/end files that you get :

  <?php
   $str = file_get_contents('long_code.php');
   eval('?>'.$str.'<?php;');
   ?>
dongpinyao2203
dongpinyao2203 对问题和解决方案的解释会很有帮助。
大约 5 年之前 回复
doushi9376
doushi9376 最好从这里了解eval:php.net/manual/en/function.eval.php
大约 5 年之前 回复
drtldt55533
drtldt55533 现在,你有没有php开始/结束标签的解决方案吗? 或不工作总是没有PHP标签?
大约 5 年之前 回复
dongsun5330
dongsun5330 乐意效劳 :)
大约 5 年之前 回复
douda5227
douda5227 thaaaaanks,工作! :)
大约 5 年之前 回复
duanqin7791
duanqin7791 你把所有的东西都保存在你的档案里了吗? 只需复制此代码,然后重试并告诉我
大约 5 年之前 回复
douhu2898
douhu2898 我以前尝试过这个解决方案,但不行
大约 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐