Php 简单HTML DOM解析器(在其他元素后插入文本/元素)

Php 简单HTML DOM解析器(在其他元素后插入文本/元素),php,insert,add,Php,Insert,Add,我正在为我的项目使用PHP简单HTML DOM解析器 我目前一直坚持的是如何定位/查找所有文本节点。。。并在文本末尾添加元素甚至文本 这是我目前正在努力的。。但我想可能有更好的(工作)方法:) 您的代码很好,只是忘记调用save: $string = "<div id='container'><div>im a text node</div><div>im another</div></div>"; $html = str_

我正在为我的项目使用PHP简单HTML DOM解析器

我目前一直坚持的是如何定位/查找所有文本节点。。。并在文本末尾添加元素甚至文本

这是我目前正在努力的。。但我想可能有更好的(工作)方法:)


您的代码很好,只是忘记调用
save

$string = "<div id='container'><div>im a text node</div><div>im another</div></div>";
$html = str_get_html($string);
foreach($html->find("text") as $ht) {
   $ht->innertext .= "<span>end of each text node</span>";
}
$html->save();
echo $html;   // echo modified html
$string=“im a text nodeim other”;
$html=str\u get\u html($string);
foreach($html->find(“文本”)作为$ht){
$ht->innertext.=“每个文本节点的末尾”;
}
$html->save();
echo$html;//echo修改的html

只需将
元素替换为
$var

实际上我不需要$html->save();行。。它确实有用。。然而,我已经升级到您的运营商(.=)与我的古老的方式做它之前。。。(非常感谢)。。然而,它最终并没有像我预期的那样起作用。。是否有方法查找文本节点/元素的结尾。。(不仅仅是附加到该文本元素内的文本…而是找到结尾并附加一些文本(甚至是一个新的div/p元素?)谢谢我不明白这个
END
是什么意思。请用输入
$string
和所需输出的示例编辑问题,以了解想法。还要注意,标记之间的空格也是文本节点(这是因为我的标记之间没有空格。我目前正在工作..但是END的意思就是这样)..文本节点/元素的结尾..(不在..内部,但在“标记”外部)..当前如果我执行上面所示的操作..它可以(例如)获取链接的文本..并附加插入变量($var或$string)到该链接的文本..因此破坏它..或使其看起来“奇怪”示例:示例:原始-我的链接之后-我的链接插入翻译这里>>成为链接..我想我或多或少在寻找一种方法,在具有(普通)的标记/节点/元素之后附加此文本或甚至一个新元素其中的文本关闭。我的总体目标是从站点/页面中获取所有文本/段落。这样就可以将其传递给翻译。因此,在每一块纯文本之后。我想添加(在新行、新元素上)文本:在此处插入翻译>>(我不在乎它是否被包装在p标签或div标签中..等等..或者只是在文本元素关闭后插入纯文本。(至于实际上不改变已废弃的文本..但要有一个占位符用于翻译的位置。希望这现在更有意义。)。
$string = "<div id='container'><div>im a text node</div><div>im another</div></div>";
$html = str_get_html($string);
foreach($html->find("text") as $ht) {
   $ht->innertext .= "<span>end of each text node</span>";
}
$html->save();
echo $html;   // echo modified html