PHP以字符串形式读取和执行文件内容

PHP以字符串形式读取和执行文件内容,php,string,file,Php,String,File,我试图将一个文件作为字符串读取,并将其返回给客户端,作为javascript代码执行,以便将其保存为变量。像这样 <?php $fileName = 'target.js'; $codeAsString = file_get_contents($fileName); $script = 'var code=\'' . $codeAsString . '\''; echo $script; ?> Javascript/php中有类似的东西吗?在将$script附加到$script时,

我试图将一个文件作为字符串读取,并将其返回给客户端,作为javascript代码执行,以便将其保存为变量。像这样

<?php
$fileName = 'target.js';
$codeAsString = file_get_contents($fileName);
$script = 'var code=\'' . $codeAsString . '\'';
echo $script;
?>
Javascript/php中有类似的东西吗?在将
$script
附加到
$script
时,我甚至无法确定是否需要在
$codeastring
周围加上单引号。我是否必须手动进入并在所有引号、双引号、反斜杠之前添加反斜杠…它们肯定有用于此的帮助函数


谢谢。

json\u encode是你的朋友

<?php
$fileName = 'target.js';
$codeAsString = file_get_contents($fileName);
$script = 'var code= '.json_encode($codeAsString) .';';
echo $script;
?>


使用PHP函数。

不错!这几乎完美无瑕。除了新行之外,当我做
console.log()
时,我会得到这些贫民窟的小马车返回符号。这是针对Chrome的,还是json_编码区分新行和回车?如果我将其存储在
var code
和do
console.log(code)
中,回车将被解释为新行。但是,如果出于任何原因将其存储在对象中,并且执行
console.log(code)
,则
code
src
属性现在几乎没有回车。因此,我怀疑这是特定于Chrome的。
<?php
$fileName = 'target.js';
$codeAsString = file_get_contents($fileName);
$script = 'var code= '.json_encode($codeAsString) .';';
echo $script;
?>