无法从PHP到JavaScript回显带有“”,“和/ n的字符串

时间:2019-05-14 16:22:02

标签: javascript php jquery html

我试图显示从YouTube API到p元素的描述,但是该描述不起作用。我认为问题在于引号,单引号和换行。即。 ""''\n

这是说明文字:

  

另一位参赛者试图克服“头案”! Daniel是否可以“掌握”他对未知事物的恐惧并可以继续唱歌?\ n \ n请订阅更多精彩片段!\ n \ n请立即订阅!

$description = $vid["items"][0]["snippet"]["description"];
echo "<script>$('.pClass:nth-of-type(4)').text($description);</script>";

请注意,它的工作方式如下:$('.pClass:nth-of-type(4)').text('test');,但从API读取时却无效。

1 个答案:

答案 0 :(得分:3)

您正在将数据输出到JavaScript,因此需要以一种可以安全使用JavaScript的方式对其进行转义。由于JSON是JavaScript的子集,因此您可以使用json_encode()

您还应该避免在双引号字符串中输出JS;您可能会遇到将JS值解释为PHP变量的问题。

<?php
$description = json_encode($vid["items"][0]["snippet"]["description"]);
?>

<script>
    $('.pClass:nth-of-type(4)').text(<?=$description?>);
</script>