Php 如何将两个节点放在同一个循环中?

Php 如何将两个节点放在同一个循环中?,php,foreach,nodes,domxpath,Php,Foreach,Nodes,Domxpath,这就是我使用的: libxml_use_internal_errors(true); $dom = new DomDocument; $dom->loadHTMLFile("https://www.gismeteo.ru/city/weekly/4230/"); $xpath = new DomXPath($dom); $weekday= $xpath->query('//*[@id="weather-weekly"]//div[@class="weekday"]'); $date=

这就是我使用的:

libxml_use_internal_errors(true);
$dom = new DomDocument;
$dom->loadHTMLFile("https://www.gismeteo.ru/city/weekly/4230/");
$xpath = new DomXPath($dom);
$weekday= $xpath->query('//*[@id="weather-weekly"]//div[@class="weekday"]');
$date= $xpath->query('//*[@id="weather-weekly"]//div[@class="s_date"]');

foreach ($weekday as $node4){
foreach ($date as $node3){
echo $node4->nodeValue,$node3->nodeValue,"<br>";}}
libxml\u使用\u内部错误(true);
$dom=新的DomDocument;
$dom->loadHTMLFile(“https://www.gismeteo.ru/city/weekly/4230/");
$xpath=newdomxpath($dom);
$weekday=$xpath->query('//*[@id=“weather weekly”]///div[@class=“weekday”]');
$date=$xpath->query('/*[@id=“weather weekly”]///div[@class=“s_date”]');
foreach($node4为工作日){
foreach(日期为$node3){
echo$node4->nodeValue,$node3->nodeValue,“
”;}

$node4->nodeValue
打印一周中的某一天
太阳、星期一、星期二……
$node3->nodeValue
打印一个月中的某一天,如何让它像这样打印同一列中的所有内容
周六23.07,周日24.08…
?谢谢。

我收到了这个错误
可捕获的致命错误:传递给DOMXPath::query()的参数2必须是DOMNode的实例
抱歉,这是一个输入错误-我在一天之前丢失了
$
好的,但是我如何才能打印所有列表?它只打印第一个项目,我试图设置
foreach($I=>$day)
,而将项目设置为
item($I)
没有帮助。@MakeMeWise我查看了页面结构并重写了代码是的!非常感谢你!我遇到了这个错误
可捕获的致命错误:传递给DOMXPath::query()的参数2必须是DOMNode的实例
抱歉,这是一个输入错误-我在Day之前丢失了
$
好的,但是我如何使它打印所有列表?它只打印第一个项目,我试图设置
foreach($I=>$day)
,而将项目设置为
item($I)
没有帮助。@MakeMeWise我查看了页面结构并重写了代码是的!非常感谢你!
$xpath = new DomXPath($dom);
$days = $xpath->query('//*[@id="weather-weekly"]//div[@class="wbshort"]');
foreach ($days as $day) {
   // find weekday and date under day
   $weekday= $xpath->query('.//div[@class="weekday"]', $day);
   $date= $xpath->query('.//div[@class="s_date"]', $day);
   echo $weekday->item(0)->nodeValue . " " . $date->item(0)->nodeValue;
}