【发布时间】:2012-04-19 00:01:02
【问题描述】:
我想做类似 tryruby.org 的东西。我从用户那里取了一行(例如,echo __FILE__),我想在 PHP 中执行它并将输出返回给客户端。
我尝试使用exec('php -r ' . $command, $output),但$output 始终包含 PHP 帮助部分。
如何实现此功能?
【问题讨论】:
-
试试
exec("php -r \"$command\"", $output)。但是无论如何它太危险了,让用户可以在你的机器上运行命令 -
看看
evalphp.net/manual/en/function.eval.php 但我不建议把用户的任何东西放在那里。您可能希望事先对其进行大量过滤。 -
更好的是,看看
Runkit_Sandbox。 -
这将是用户允许输入的命令的具体列表
标签: php shell terminal command-line-interface interpreter