我刮了网站,我在下面得到了单元素的结果,我想把这些元素一分为二。
代码:
$dom1 = new DomDocument();
@ $dom1->loadHTML($res1);
$jobview=$dom1->getElementById('test');
foreach($jobview->getElementsByTagName('div') as $divlist){
echo $test=$divlist->nodeValue;
}
输入:-
<strong>Testcontent</strong> <br><br> "Test" <br></br>
当前输出:-
Testcontent Test
预期输出:-
array[0]=>Testcontent [1]=>Test
发布于 2020-09-01 14:34:06
每个文本部分都是<div>
标记的一部分,所以这段代码只是假设您不想要来自每个直接子元素的文本,并使用[]
将其添加到循环中的一个数组中。
$output = [];
foreach($jobview->getElementsByTagName('div') as $divlist){
foreach ( $divlist->childNodes as $node ) {
if ( trim($node->textContent) ) {
$output[] = $node->textContent;
}
}
}
print_r($output);
https://stackoverflow.com/questions/63689408
复制相似问题