2009-04-09 53 views
4

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

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

我想它产生的文件中确切的字符串,而不是eval'ed代码。这可能吗?

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

<?php 1 = 2 ?> 

而我想真正的字符串:

<?php $var = $var2 ?> 

感谢您的帮助

回答

20

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

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

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

3

对双引号字符串进行解析以获取变量,并将变量值插入到该位置。我想这是因为PHP最初被设计成一个瘦webserver-数据库模板层。

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

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

不一样:

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

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

4

只是逃离$符号

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