1

文字列に次のようなテーブルがあります。

<table>
    <tr class='test'>
        <td class='t' style='color: red'>
            aaaaa
        </td>
        <td class='t'>
            bbbbb
        </td>
    </tr>

    <tr>
        <td style='color: red'>
            ccccc
        </td>
        <td class='t'>
            ddddd
        </td>
    </tr>
</table>

PHPですべてのtdコンテンツを配列に入れるにはどうすればよいですか? このような:

array(
      arg[0] => 'aaaaa',
      arg[1] => 'bbbbb',
      arg[2] => 'ccccc',
      arg[3] => 'ddddd',
)
4

1 に答える 1

4

DOMDocumentを使用して HTML を解析し、要素を取得してみてください。

$result = array();

$dom = new DOMDocument;
$dom->loadHTML($table);
$xPath = new DOMXPath($dom);

$td = $xPath->query('//table/tr/td');

foreach($td as $val){
    $result[] = $val->nodeValue;
}

print_r($result);

デモ: http://codepad.viper-7.com/wqIPbp

于 2012-04-25T22:26:55.910 に答える