我有一个应用程序,它读取textarea并将textarea作为PHP文件运行。
textarea内容保存在txt文件中并与more tools --> developer tools
一起运行,但我只想允许用户使用eval(file_get_contents('myfile.txt'));
,echo
语句,if
,{{ 1}}不使用for
函数和其他函数,如while
。
修改 再解释一下:如何使用像mysql和文件函数这样的php函数禁用特定文件?
有没有选择呢?
答案 0 :(得分:0)
另一种方法,你可以试试php沙箱: https://github.com/fieryprophet/php-sandbox
答案 1 :(得分:0)
override_function('file_put_contents', '$a', 'echo file_put_contents not allowed...;');
该解决方案的问题:如果您在eval()之后需要其中一个函数,则无法使用它们。除非你重写覆盖。第二个问题,重写列表可能很长(: