Php 我想用两列打印DOMXPath的输出。1.车名2。价格

Php 我想用两列打印DOMXPath的输出。1.车名2。价格,php,Php,我尝试了以下代码: $car_row = $car_xpath->query('//h3[@class="adtitlesnb"]'); $car_row2 = $car_xpath->query('//div[@class="snb_price_tag"]'); $i = 0; echo "<table><thead><tr><td>Car Name</td><td>Price&l

我尝试了以下代码:

  $car_row = $car_xpath->query('//h3[@class="adtitlesnb"]');
  $car_row2 = $car_xpath->query('//div[@class="snb_price_tag"]');


  $i = 0;    

  echo "<table><thead><tr><td>Car Name</td><td>Price</td></tr></thead><tbody>";

  foreach($car_row as $row){

     echo "<tr><td>";
     echo $row->nodeValue;
     echo "</td><td>";
     echo $car_row2->nodeValue;
     echo "</td></tr>";

  }

  echo "</tbody></table>";

不能使用foreach迭代一个数组,而期望另一个数组跟随

foreach实质上重置数组上的当前索引,然后循环调用数组上的next,直到没有剩余的元素。使用“重置”和“下一步”,您可以对第二个阵列进行如下模拟:

    $car_row = $car_xpath->query('//h3[@class="adtitlesnb"]');
    $car_row2 = $car_xpath->query('//div[@class="snb_price_tag"]');

    echo "<table><thead><tr><td>Car Name</td><td>Price</td></tr></thead><tbody>";

    $row2 = reset($car_row2);  // set the internal array pointer to the begining
    foreach($car_row as $row) {
       echo "<tr><td>";
       echo $row->nodeValue;
       echo "</td><td>";
       echo $row2->nodeValue;
       echo "</td></tr>";
       $row2 = next($car_row2); // retrieve the next node from car_row2
    }

  echo "</tbody></table>";

请有人更正密码!谢谢。。但是我得到了这个错误:注意:试图在C:\xampp\htdocs\Nehan\test.php的第37行获取非对象的属性。这是我的第37行。您使用什么来生成Xpath查询?这是我的错吗?如果是这样的话,你就不能用foreach进行迭代,我会编辑我的答案。事实上,我错了,这应该可以用DOMXPath实现。你的原始代码是否正常工作,而我的代码破坏了它?我看不出你的第37行是什么。$car\u row和$car\u row2的长度是否完全相同?我的第37行:echo$row2->nodeValue;