在`echo(“”);`命令中执行php命令

时间:2013-02-22 16:26:02

标签: php forms

我想知道是否有可能让一个php命令回显一个全新的php集。

<?php
$phpcmd=$_POST["phpcmd"];
echo "<?".$phpcmd."?>";
?>

<form action="" method="post">
<input type="text" value="<?echo($phpcmd)?>" name="phpcmd">
<input type="submit">
</form>

1 个答案:

答案 0 :(得分:3)

您可以使用以下方式执行此操作:

eval($phpcmd);

BUT ...

我强烈建议你不要,想想这样的安全风险,恶意用户可能会对这样的脚本造成大量损害。

作为PHP docs州:

  

eval()语言结构非常危险,因为它允许   执行任意PHP代码。因此不鼓励使用它。如果你   仔细确认除了使用它之外别无选择   构建时,要特别注意不要传递任何用户提供的数据   没有事先正确验证它就进入它。

有关eval()功能的更多信息,请查看this article