对于这个 php 脚本,
$dom = new DOMDocument();
$dom->substituteEntities =FALSE;
$dom->loadHTML('<a href="$a?">$a</a>');
// print_r ($dom->getElementsByTagName("a")->item(0)->getAttribute("href"));
Run Code Online (Sandbox Code Playgroud)
//上面的语句显示$a? 正确地
echo $dom->saveHTML();
Run Code Online (Sandbox Code Playgroud)
但当调用 saveHTML 方法时,它会将 <a href="%24a">$a</a> 返回到浏览器。href 属性中的 $ 变为 %24,而 a 标签内容中的 $ 保持不变。
我预计输出是 <a href="$a">$a</a> 除了替换方法之外还有什么方法可以做到这一点?
顺便一提,
echo $dom->saveXML();
Run Code Online (Sandbox Code Playgroud)
我用 saveXML() 得到了我想要的;但加上一个意想不到的 <!--xml...... 谢谢
voo*_*417 -2
您可以将 echo 包装在urldecode中来解决此问题:
echo urldecode($dom->saveHTML());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1885 次 |
| 最近记录: |