我發送html到\ DomDocument和\ DomDocument轉換所有特殊字符。PHP DOMDocument轉換爲>和&到&
我怎麼能說\的DomDocument不轉換轉換爲{{%...%}
{如果&> 10%}之間我們的特殊字符如果%一& > 10%}
輸入
<!DOCTYPE html>
<body>
{% if &a > 10 %}
{% print &a %}
{% end if %}
<img src="{%# image %}" >
<script>
if a > 10
</script>
</body>
輸出
<!DOCTYPE html>
<html><body>
{% if &a > 10 %}
{% print &a %}
{% end if %}
<img src="%7B%# image %%7D" >
<script>
if a > 10
</script></body></html>
代碼
$dom = new \DOMDocument('1.0', 'UTF-8');
$content = '<!DOCTYPE html><body>
{% if &a > 10 %}
{% print &a %}
{% end if %}
<img src="{%# image %}" >
<script>
if a > 10
</script>
</body>';
@$dom->loadHTML($content);
echo $dom->saveHTML();
你不能。不轉換字符會導致無效的XML文件。 DOMDocument的工作是讀取/創建有效的XML文件。你不能挑選。 – Dezza
感謝@Dezza,我想另一種解決方案是,我想要在{%%}(正則表達式和base64)之間編碼數據,並且在完成流程DOMDocument過程之後將其轉換爲實際代碼。 –