首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何拆分php dom元素上的节点值

如何拆分php dom元素上的节点值
EN

Stack Overflow用户
提问于 2020-09-01 22:10:31
回答 1查看 99关注 0票数 0

我刮了网站,我在下面得到了单元素的结果,我想把这些元素一分为二。

代码:

代码语言:javascript
运行
复制
$dom1 = new DomDocument();
@ $dom1->loadHTML($res1);
$jobview=$dom1->getElementById('test');
foreach($jobview->getElementsByTagName('div') as $divlist){
    echo $test=$divlist->nodeValue; 
}

输入:-

代码语言:javascript
运行
复制
<strong>Testcontent</strong> <br><br> "Test" <br></br> 

当前输出:-

代码语言:javascript
运行
复制
Testcontent Test 

预期输出:-

代码语言:javascript
运行
复制
array[0]=>Testcontent [1]=>Test 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-01 22:34:06

每个文本部分都是<div>标记的一部分,所以这段代码只是假设您不想要来自每个直接子元素的文本,并使用[]将其添加到循环中的一个数组中。

代码语言:javascript
运行
复制
$output = [];
foreach($jobview->getElementsByTagName('div') as $divlist){
    foreach ( $divlist->childNodes as $node )   {
        if ( trim($node->textContent) ) {
            $output[] = $node->textContent;
        }
    }
}
print_r($output);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63689408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档