4

我想知道是否可以将php代码写入文件。例如:

fwrite($handle, "<?php $var = $var2 ?>");

我希望它在文件中生成确切的字符串,而不是经过评估的代码。这可能吗?

我目前得到以下输出(其中 $var = 1 和 $var2 = 2):

<?php 1 = 2 ?>

而我想要实际的字符串:

<?php $var = $var2 ?>

谢谢您的帮助

4

4 回答 4

19

您可以使用单引号代替双引号,双引号不会扩展内联变量名称:

fwrite($handle, '<?php $var = $var2 ?>');
于 2009-04-09T13:52:16.373 回答
4

只需转义 $ 符号

<?php
fwrite($handle, "<?php \$var = \$var2 ?>");
?>
于 2009-04-12T07:39:31.383 回答
3

为变量解析双引号字符串,并将变量值插入该位置。我想这是因为 php 最初被设计为一个瘦 webserver-database 模板层。

就个人而言,我不喜欢这样,因此从不使用双引号。相反,我总是使用单引号和字符串连接:

<?php echo 'hello, ' . $name; ?>

与以下内容相同:

<?php echo "hello, $name"; ?>

单引号:语法着色效果更好,它(略微)更快并且更容易发现错误

于 2009-04-09T14:30:19.013 回答
0

这与文件 io 无关。阅读 PHP 中字符串中的变量替换和转义。

于 2009-04-09T14:17:36.610 回答