2016-12-07 2 views
0

DiDom htmlパーサライブラリを使用しています。それはドキュメント(https://github.com/Imangazaliev/DiDOM#verify-if-element-exists)だから:あなたは、その要素が存在するかどうかを確認し、必要がある場合はDIDOM htmlパーサーでn番目の要素が存在するかどうかを確認する方法

それを得る:

if ($document->has('.post')) { 
    $elements = $document->find('.post'); 
    // code 
} 

しかし、何を、私は 'は要素の配列のn番目の要素のexistanceをチェックする必要がある場合.post」クラスは、例えば:

$elements = $document->find('.post')[1]; 

以下のコードは動作し、エラーをスローしません:

if ($document->has('.post')[1]) { 
    $elements = $document->find('.post')[1]; 
    // code 
} 

答えて

0

解決策が見つかりました。 DiDOM has()メソッドはnth-childオプションを提供していません。だから私はn番目の要素の外観を確認するために擬似クラスセレクタのnth - 子(n)を使用しました。 コードは次のようになります:

if ($document->find('.post:nth-child(2)')) { 
     $elements = $document->find('.post:nth-child(2)'))[0]->text(); 
    } else { 
    echo "there are no such item"; 
    } 
関連する問題