使用PHP将多个表刮到数组

时间:2019-04-28 18:43:31

标签: php

我正在使用php DomDocument抓取多个表,但是我不明白如何将多个表数据输出为数组,例如下面的示例。

示例:

[0] =>
    [Network] =>
                [Technology]=>[GSM / HSPA / LTE]
                [...]=>[...],
                [...]=>[...]
[1] =>
    [...] =>
                [...]=>[...],
                [...]=>[...],
                [...]=>[...]

我的代码如下:

$doc = new DomDocument();
$doc->preserveWhiteSpace = false;
@$doc->loadHTML($responseBody);
$xpath = new DOMXPath($doc);

$th = $xpath->query('//table//th');
$tdFirst = $xpath->query('//table//td[contains(@class, "ttl")]');
$tdSecond = $xpath->query('//table//td[contains(@class, "nfo")]');

我从下面的代码中获取输出,但是我不希望这种类型的输出。我需要像我的例子一样输出。我想在自己的表设计上显示输出的数据,所以我需要它。

foreach($th as $rows) {
  echo $rows->nodeValue.'<br>';
}

foreach($tdFirst as $rows) {
  echo $rows->nodeValue.'<br>';
}

foreach($tdSecond as $rows) {
  echo $rows->nodeValue.'<br>';
}

对不起,英语不好。谢谢

我想从多个表格(如下表)中抓取数据(我只是将第一个表格复制并粘贴多次以了解您,我的目标抓取站点表格看起来是一样的):

<table>
<tbody>
<tr>
<th scope="col" colspan="2">Network</th>
</tr>
<tr>
<td class="ttl"><a>Technology</a></td>
<td class="nfo" >GSM / HSPA / LTE</td>
</tr>
</tbody>
</table>

<table>
    <tbody>
    <tr>
    <th scope="col" colspan="2">Network</th>
    </tr>
    <tr>
    <td class="ttl"><a>Technology</a></td>
    <td class="nfo" >GSM / HSPA / LTE</td>
    </tr>
    </tbody>
    </table>

<table>
    <tbody>
    <tr>
    <th scope="col" colspan="2">Network</th>
    </tr>
    <tr>
    <td class="ttl"><a>Technology</a></td>
    <td class="nfo" >GSM / HSPA / LTE</td>
    </tr>
    </tbody>
    </table>

<table>
    <tbody>
    <tr>
    <th scope="col" colspan="2">Network</th>
    </tr>
    <tr>
    <td class="ttl"><a>Technology</a></td>
    <td class="nfo" >GSM / HSPA / LTE</td>
    </tr>
    </tbody>
    </table>

0 个答案:

没有答案