Php 获取html标记内部/之间的所有内容
获取一些html元素+值的最佳方法是什么?例如:Php 获取html标记内部/之间的所有内容,php,regex,xpath,Php,Regex,Xpath,获取一些html元素+值的最佳方法是什么?例如: <div id="abc" class="classs"> <img src="pic1.png" alt="pico"> <img src="pic2.png" alt="nano"> </div> 它应该在数组、对象或其他东西中。 你喜欢什么?xpath?正则表达式?xmlobject?您可能想要使用您可能想要使用使用此函数: public function innerHTML
<div id="abc" class="classs">
<img src="pic1.png" alt="pico">
<img src="pic2.png" alt="nano">
</div>
它应该在数组、对象或其他东西中。
你喜欢什么?xpath?正则表达式?xmlobject?您可能想要使用您可能想要使用使用此函数:
public function innerHTML($DOMnode) {
return preg_replace(
'/^<(\w+)\b.*?>(.*)<\/\1?>/s',
'$2',
$DOMnode->ownerDocument->saveXML($DOMnode)
);
}
公共函数innerHTML($DOMnode){
返回预更换(
“/^(.*)/s”,
'$2',
$DOMnode->ownerDocument->saveXML($DOMnode)
);
}
使用此功能:
public function innerHTML($DOMnode) {
return preg_replace(
'/^<(\w+)\b.*?>(.*)<\/\1?>/s',
'$2',
$DOMnode->ownerDocument->saveXML($DOMnode)
);
}
公共函数innerHTML($DOMnode){
返回预更换(
“/^(.*)/s”,
'$2',
$DOMnode->ownerDocument->saveXML($DOMnode)
);
}
是否有可能使用XHTML?这将使使用基于XML的解决方案更容易。您想在服务器端还是客户端执行此操作?服务器端是的,我可以使用XHTML。有可能使用XHTML吗?这将使使用基于XML的解决方案更容易。您想在服务器端还是客户端执行此操作?服务器端,是的,我可以使用xhtmlIA Cthulhu Fhtagn!!!如果您更好地研究代码,您会注意到您没有解析整个HTML页面,而只是解析DOM节点的内容!我确实研究过它,发现为了能够在其上运行正则表达式而将DomNode转换为字符串是很可怕的。我看不出为什么使用字符串会比在节点上迭代、使用appendXML和文档碎片效率低,因为这就像在手术中从手术刀切换到勺子一样。如果您已经在使用正确的工具集(DOM),为什么要在中途放弃它,因为它对节点和属性没有任何线索?IA IA Cthulhu Fhtagn!!!如果您更好地研究代码,您会注意到您没有解析整个HTML页面,而只是解析DOM节点的内容!我确实研究过它,发现为了能够在其上运行正则表达式而将DomNode转换为字符串是很可怕的。我看不出为什么使用字符串会比在节点上迭代、使用appendXML和文档碎片效率低,因为这就像在手术中从手术刀切换到勺子一样。如果您已经在使用正确的工具集(DOM),为什么要在中途放弃它呢?因为您对节点和属性一无所知?