使用PHP创建PHP文件?
我正计划创建一个简单的脚本,允许没有PHP经验的用户为一个视频游戏创建代码文件。我有两个文件,“code.txt”和“exec.php”。第一个文件如下所示:使用PHP创建PHP文件?,php,Php,我正计划创建一个简单的脚本,允许没有PHP经验的用户为一个视频游戏创建代码文件。我有两个文件,“code.txt”和“exec.php”。第一个文件如下所示: getglobal_move_call("TurnTarget") getglobal_move_loadk_call("GenerateCSM", "15") <? $temp_line = "TurnTarget(param1)"; file_put_contents($generated_output, $temp_lin
getglobal_move_call("TurnTarget")
getglobal_move_loadk_call("GenerateCSM", "15")
<?
$temp_line = "TurnTarget(param1)";
file_put_contents($generated_output, $temp_line, FILE_APPEND);
$temp_line = "GenerateCSM(param1, 15)";
file_put_contents($generated_output, $temp_line, FILE_APPEND);
?>
“exec.php”创建一个“temp.php”,导入用户创建的文件。它充满了“str_replace”函数,结果应该是这样的:
getglobal_move_call("TurnTarget")
getglobal_move_loadk_call("GenerateCSM", "15")
<?
$temp_line = "TurnTarget(param1)";
file_put_contents($generated_output, $temp_line, FILE_APPEND);
$temp_line = "GenerateCSM(param1, 15)";
file_put_contents($generated_output, $temp_line, FILE_APPEND);
?>
但是,当我在这些替换之后回显我的代码时,我得到的是:
<?
= "TurnTarget(param1)";
file_put_contents(User/Apple/Sites/Generate/Generated.txt, , FILE_APPEND);
= "GenerateCSM(param1, 15)";
file_put_contents(User/Apple/Sites/Generate/Generated.txt, , FILE_APPEND);
?>
如您所见,str_替换删除的所有变量。有解决方案吗?这是因为您在代码中使用了
”
,而PHP将$temp\u line
替换为它的实际值(null,因为没有这样的变量)
要回显PHP代码,请使用\
$code=通过分隔“$”符号和变量名称修复了该问题
str_replace("templine", "$"."templine", $code);
您要替换的$temp_line
字符串可能是空字符串或空字符串。如果看不到任何说明问题的代码,您所问的就没有多大意义。