【发布时间】:2017-04-14 05:48:29
【问题描述】:
我正在从一个 dom 对象创建一个 twig 文件,并且我想在特定 div 周围添加一个代码块,这样我就可以在 twig 中使用它。
所以我现在的html代码是这样的:
<div>
<div class="class1 class2">
<div>
Some content here
</div>
</div>
</div>
我想改成(格式不重要):
<div>
{% block topBar %}
<div class="class1 class2">
<div>
Some content here
</div>
</div>
{% endblock %}
</div>
所以我做了类似的事情:
$pullURL = "http://example.com";
$dom = new DOMDocument('1.0');
$dom->loadHTMLFile($pullURL);
$domx = new DOMXPath($dom);
$topBar = $domx->query("//*[contains(@class, 'class1 class2')]");
$startTopBlock = $dom->createTextNode("{% block topBar %}");
$topBar[0]->insertBefore($startTopBlock, $topBar[0]);
但是,我不断收到消息
PHP 致命错误:未捕获的异常 'DOMException' 带有消息 'Not 在 /path/to/file.php:41 中发现错误'
第 41 行是 insertBefore 代码。
在文本中包装 dom 对象的最佳方法是什么?
【问题讨论】:
标签: php class dom nodes codeblocks