我有下面的代碼:如何通過JavaScript函數對PHP字符串進行編碼以用作字符串?
<iframe id="uniqueId" frameborder="0" width="100%" height="100%"></iframe>
<script>
var iframeObject = document.getElementById("uniqueId");
var iframeContent = iframeObject.contentWindow.document;
iframeContent.open();
iframeContent.write("<?php echo $htmlString ?>");
iframeContent.close();
</script>;
我試圖插入用戶生成的HTML(元數據,<html>
,<head>
,<body>
,<script>
S和所有),存儲爲PHP變量的字符串$htmlString
,放入#uniqueId iframe以供瀏覽器/客戶端呈現。
我真的很難找出正確的方法來安全地轉義/編碼這個字符串的HTML用於我寫的JavaScript。
在PHP的一面,我已經試過$htmlString
htmlspecialchars()
,htmlentities()
,json_encode()
,和一些簡單的str_replace()
S,但他們沒有做什麼,我需要他們。有什麼我失蹤?
如何使用'htmlspecialchars()'和'str_replace()'如'str_replace(array(「\ r」,「\ n」),「」,htmlspecialchars($ htmlString));''。 – imtheman
@imtheman,我會在str_replace中包含反斜槓('「\\」')。如果'$ htmlString'後面的雙引號被轉義,可以得到一些時髦的結果。 – jh1711