Php Can';是否在JavaScript警报框中添加新行?

Php Can';是否在JavaScript警报框中添加新行?,php,javascript,Php,Javascript,我在PHP中生成一个字符串,然后最终将该字符串传递到JavaScript警报框中,我的问题是我实际上无法在警报框中添加换行符 我的代码如下所示 $str = "This is a string\n"; $alert = $str."This is the second line"; if(!empty($alert)){ ?> <script type="text/javascrip

我在PHP中生成一个字符串,然后最终将该字符串传递到JavaScript警报框中,我的问题是我实际上无法在警报框中添加换行符

我的代码如下所示

$str = "This is a string\n";
$alert = $str."This is the second line"; 

    if(!empty($alert)){
        ?>
            <script type="text/javascript">
            $(document).ready(function() {
                alert('<?=$alert?>');
            });
        </script>
    <?php
}
$str=“这是一个字符串\n”;
$alert=$str.“这是第二行”;
如果(!空($alert)){
?>
$(文档).ready(函数(){
警报(“”);
});

这是因为PHP在JavaScript有机会解释之前解释了\n,导致JavaScript代码中出现真正的换行符。 试一试


这是因为PHP在JavaScript有机会解释之前解释了\n,导致JavaScript代码中出现真正的换行符。 试一试


您需要将
$str
更改为

$str = "This is a string\\n";

因此,
\n
被传递到JavaScript。

您需要将
$str
更改为

$str = "This is a string\\n";

因此,
\n
被传递到JavaScript。

这是有意义的,我尝试了这个,这对我来说很有效,thx Pekkaa实际上这还不够,因为字符串可能包含引号和其他字符,这会使代码无效。您应该转义字符串。有关如何做,请参阅。这是有意义的,我尝试了这个和这个工作对我来说,thx Pekkaa实际上这还不够,因为字符串可能包含引号和其他字符,这会使代码无效。您应该转义字符串。有关如何执行此操作,请参阅。