-2
<div id="gallery">

<a href="url/stock_img2/36536/1.jpg" class="gallary-tmb"><img src="url/stock_img2/36536/1.jpg" alt="TIIDA LATIO 15B" /></a>

<a href="url/stock_img2/36536/2.jpg" class="gallary-tmb"><img src="url/stock_img2/36536/2.jpg" alt="TIIDA LATIO 15B" /></a>

</div><div class="clearfix"></div>
</div>

皆さん、上記は、データを取得する必要があるページの部分的なソース コードです。

必要なのは、クラス「gallary-tmb」の2つの値のURLのみです。例:

$thumb1 = "url/stock_img2/36536/1.jpg";

$thumb2 = "url/stock_img2/36536/2.jpg";

データを取得する方法がわかりません-クラスまたは preg_match のどちらか簡単な方を使用することを考えています

4

1 に答える 1

0

このコード f.eks は、「img」要素から「src」ノードのすべての値をエコーし​​ます。

<?php
 $str = <<<EOD
 <div id="gallery">

 <a href="url/stock_img2/36536/1.jpg" class="gallary-tmb"><img src="url/stock_img2/36536/1.jpg" alt="TIIDA LATIO 15B" /></a>

 <a href="url/stock_img2/36536/2.jpg" class="gallary-tmb"><img src="url/stock_img2/36536/2.jpg" alt="TIIDA LATIO 15B" /></a>

 </div><div class="clearfix"></div>
 EOD;

 $dom = new DOMDocument();
 $dom->loadHTML($str);

 $p = $dom->getElementsByTagName("img");

   foreach ($p as $node) {
     if ($node->hasAttributes()) {
       foreach ($node->attributes as $attr) {
         if ($attr->nodeName == "src") {
           echo $attr->nodeValue;
         }
       }
     }
   }
?>

正規表現と preg_match を扱う代わりに、dom を扱うより一般的なアプローチです。

于 2013-11-13T18:58:18.277 に答える