DOM getElementsByTagNameを使用してhtmlタグを上から下へループする方法を知っています。PHP DOMDocumentを使用して、以下の画像タグを検索します。
おそらく見つかったまたは行番号に基づいて実際にどこから開始するかをループに伝えることは可能ですか?
例:
私は、ファイル内のコメント
<!-- Start Here -->
コメント
DOM getElementsByTagNameを使用してhtmlタグを上から下へループする方法を知っています。PHP DOMDocumentを使用して、以下の画像タグを検索します。
おそらく見つかったまたは行番号に基づいて実際にどこから開始するかをループに伝えることは可能ですか?
例:
私は、ファイル内のコメント<!-- Start Here -->
コメント
以下のimgタグによるファイルのコメント
ループを探す必要がありXPathクエリc ouldはあなたが求めていることをします。
$domDoc->load('/path/to/your/html');
$xpath = new DOMXPath($domDoc);
$qry = "//comment()[. = ' Start Here ']/following::img";
$results = $xpath->query($qry);
$results
今コメントの後に発生したすべてのimg
タグの反復可能なリストが含まれています。このような具体的なコメントをした後、あなたはすべてのimg
タグを選択することができます。あなたはあなたのイメージを処理することができます。上記のループでは、$img
は、あなたがこれらの機能を使用して、それを操作することができるようにDOMNode
オブジェクトがあり、
foreach($results as $img){
echo $img->getAttribute('src');
}
注:例えば、これは各img
ためsrc
属性をプリントアウトします。
実際の使用方法の複雑さによっては、XPath syntaxを読むことをお勧めします。これはDOM解析のための非常に強力なツールです。
@halfer上記の結果を無視したいと思います。 –
私はXPathを使用したことがないので、提案と構文へのリンクを感謝します。あなたのコードは完全に機能しました。 –
php [simple html dom parser](http://simplehtmldom.sourceforge.net/manual.htm)を使用することができます。私は例を作成するのが面倒です。ごめんなさい –
パフォーマンスを改善する目的はありますか?またはこのコメントの前に結果を無視したいですか? – halfer
これまでに試したコードはありますか? –