簡體   English   中英

無需使用JS注釋hack即可在PHP中轉義json數據的正確方法

[英]Proper way to escape json data in PHP without using JS comment hack

考慮下面的代碼,以從php向js發送json字符串,

<?php
    $str = "<!--<script>"; // This is from user input
?>

<script>
   var json_str = <?= json_encode($str) ?>;
</script>

該字符串將破壞HTML,而解決該問題的方法是通過諸如舊學校注釋hack之類的方法,例如

<script>
<!--
   var json_str = <?= json_encode($str) ?>;
//-->
</script>

還有其他選擇嗎?

您可以使用標志JSON_HEX_TAG ,以便<>被編碼為\<\>

json_encode($str, JSON_HEX_TAG)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM