最近,当我尝试实现一个特殊的模板引擎时,我遇到了异常。
DOMDocument加载的挖掘问题实际上是我在href中使用了一些占位符,并且在使用实际值之后它将被替换。我想存储该模板,并在每次需要时使用它,这里是代码示例
$this->dom = new DOMDocument;
$load_html = $this->dom->loadHTML($html);
HTML的nesty部分看起来像
<a href="@_@web_site_address@_@">Visit our web site</a>
,例外是
Fatal error: DOMDocument::loadXML() [<a href='domdocument.loadxml'>domdocument.loadxml</a>]: EntityRef: expecting ';' in Entity
我试图找到某种方法来跳过该检查,但找不到任何东西。
答案 0 :(得分:3)
这导致PHP 5.3中没有错误。您必须有一些其他HTML导致此问题。通常你在使用没有的实体时会看到这个;在它之后。
<a href="#">Foo   Bar</a>
这给我带来了同样的错误。找一些没有的实体;在上面。浏览器会渲染它,但它不正确。
答案 1 :(得分:3)
我发现了什么问题。在我的网址中,它是&
符号,我用&
替换它,现在它可以正常工作。