在php文件中用fwrite显示php代码

时间:2015-08-03 09:47:28

标签: php fwrite

您好我正在使用下面的代码在.php文件中写下以下行。

$stringDatar = "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML+RDFa 1.0//EN'\n";
fwrite($handler, $stringDatar);

我正在尝试使用以下代码在php文件中写入相同内容,但它不会使用php代码。

$stringDatar = "'.<?php $_GET['p']\n.'";
fwrite($handler, $stringDatar);

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

变量在双引号内扩展,因此它将$_GET['p']的值放入文件中。你需要逃避美元符号,以便按字面意思书写。

$stringDatar = "'.<?php \$_GET['p']\n.'";

答案 1 :(得分:1)

你可以使用这种可能更舒适的格式

chmod: changing permissions of ‘/run/postgresql’: Operation not permitted

fileContents:

<?php

$content = <<< END
<?php
  \$d = 5;
  echo "\$d".PHP_EOL;
  echo \$_GET['arg'];

END;
file_put_contents("filename.php", $content);