php-html-parserパッケージ(ベースsimplehtmldom)を使用して、Composer経由で読み込んでHTML文字列を解析していますが、$ dom-> find()私が探しているすべての要素は、最初の要素(29個のうち)しか検出していません。
require __DIR__ . "/vendor/autoload.php";
$dom = new PHPHtmlParser\Dom;
$dom->load($result); // $result is the output of a cURL request
$classes = $dom->find('li[class=SPECIALCLASS]');
echo count($classes);
foreach($classes as $class){
echo $class->text;
}
出力:1
サンプルHTML:
<li class="SPECIALCLASS "></li>
<li class="SPECIALCLASS SOMEOTHERCLASS "></li>
EDIT:クラスセレクタ完全に返される5月29日のliタグになり、私は何か大きなものがあると感じているの削除ここで遊ぶ。
:foreachの($、DOM>( 'のli [クラス= SPECIALCLASS見つける
の代わりに] ')as $ element){} – HZS
php-html-parserをインストールし、サンプル入力でスクリプトをテストしたところ、期待どおりに2が返されました。だから多分問題は、サンプルHTMLです。 –