无法将变量文本保存到文件中


Cannot save variable text to file

我对这个代码有一个问题:

$myvariable = "<?php $user_id = '5'; ?>";

…现在我用php把它写入文件…

,下面是我打开保存文件时看到的内容:

<?php  = '5'; ?>

$user_id缺失!

为什么会发生这种情况,有没有办法解决这个问题?

当您使用双引号时,文本中的任何$variables将被其当前值所替换。因为$user_id在当前运行的代码中没有定义,所以它被替换为空。

有几种方法可以防止这种情况发生。您可以将字符串用单引号括起来,用反斜杠转义文本中现有的单引号:

$myvariable = '<?php $user_id = ''5''; ?>';

或者你可以用反斜杠转义$,这样它就不会被解释:

$myvariable = "<?php '$user_id = '5'; ?>";

如果用双引号括住字符串,PHP就会解释字符串中的变量。但是,如果使用单引号,它将按字面解释字符串。

尝试转义变量名中的美元符号。这样的:

$myvariable = "<?php '$user_id = '5'; ?>";