1

私のウェブページには 8 つのテーブルが含まれています。3番目のテーブルを解析したい

1 番目、3 番目、5 番目、および 7 番目のテーブルのページ ソース: (すべて 80 要素を含む)

<table cellpadding="0" cellspacing="0" width="100%" border="0" class="cricket-performanceTable">

2 番目、4 番目、6 番目、8 番目のテーブルのページ ソース: (要素は試合によって異なります)

<table cellpadding="0" cellspacing="0" width="100%" border="0" class="cricket-performanceTable noBorderTop">

だから私はこのように解析しました:

 $name = $html->find('div[class=cricket-accorContent] table[class=cricket-performanceTable] td');

最初のテーブル ($name[80]) まで動作します。

($name[81]) を印刷すると、2 番目のテーブルの最初の要素が表示されます。しかし、3番目のテーブルの最初の要素を印刷したい

といっtable[class= ]ても違います。2 番目のテーブルの1table[class=cricket-performanceTable] 番目のテーブル:table[class=cricket-performanceTable noBorderTop]

3 番目のテーブルを解析するにはどうすればよいですか?

4

1 に答える 1

3

これを試して:

$src = '<div class="cricket-accorContent">
<table cellpadding="0" cellspacing="0" width="100%" border="0" class="cricket-performanceTable"><tr><td>11</td><td>12</td></tr></table>
<table cellpadding="0" cellspacing="0" width="100%" border="0" class="cricket-performanceTable noBorderTop"><tr><td>21</td><td>22</td></tr></table>
<table cellpadding="0" cellspacing="0" width="100%" border="0" class="cricket-performanceTable"><tr><td>31</td><td>32</td></tr></table>
<table cellpadding="0" cellspacing="0" width="100%" border="0" class="cricket-performanceTable noBorderTop"><tr><td>41</td><td>42</td></tr></table>
</div>
';

$html = str_get_html($src);

$thirdTable = $html->find('div[class=cricket-accorContent] table', 2);
$firstTD = $thirdTable->find('td', 0)->plaintext;
$secondTD = $thirdTable->find('td', 1)->plaintext;

echo '-' . $firstTD . '-';
echo '-' . $secondTD . '-';

出力:

-31--32-

于 2013-08-14T21:25:17.080 に答える