0
<img src="http://resim.domain.com/Gazete/kucuk/03.04.2013/yenisafak_kucuk_030413.jpeg" width="96" height="126"  />
<img src="http://resim.ihlassondakika.com/Gazete/kucuk/03.04.2013/zaman_kucuk_030413.jpeg" width="96" height="126"  />
<img src="http://resim.ihlassondakika.com/Gazete/kucuk/03.04.2013/milliyet_kucuk_030413.jpeg" width="96" height="126"  />
<img src="http://resim.ihlassondakika.com/Gazete/kucuk/03.04.2013/hurriyet_kucuk_030413.jpeg" width="96" height="126"  />

preg_match_all image and save my hosting path please help

4

2 に答える 2

0

preg_match_all を使用する場合は、入力行がすべて 1 つの文字列、たとえば $str に含まれていると想定します。もしそうなら、それが意図されたものであると仮定して、以下を使用してパスだけを引き出し、ファイル名を削除することができます。(私がそれを誤解した場合は申し訳ありません。)

$pattern="#img.+?src\s*=\s*\"(.*?)/[^/]+\.(jpeg|jpg|gif|png)#i";
$n = preg_match_all($pattern, $str, $matches, PREG_PATTERN_ORDER);
for ($i = 0; $i < $n; ++$i) {
    print $matches[1][$i] . "\n"; # or save
}

とにかく、これがまったく役立つことを願っています。

于 2013-04-03T10:23:52.837 に答える
0

まず、次のことを行う必要があります...

$str = '<img src="http://resim.domain.com/Gazete/kucuk/03.04.2013/yenisafak_kucuk_030413.jpeg" width="96" height="126"  />';
$str = '<img src="http://resim.ihlassondakika.com/Gazete/kucuk/03.04.2013/zaman_kucuk_030413.jpeg" width="96" height="126"  />'

次に、 preg_match を使用して一致を引き出す必要があります

preg_match('/(<img[^>]+>)/i', $str, $matches)

この後、一致変数に一致をエコーまたは保存できます。たとえば、これらをエコーアウトしたり、1 つずつ保存したりできます。

echo $matches[0]; // first one 

echo $matches[1]; // second match 

試合を保存するにはループが必要ですが、このように保存できます。

$myFile = "test.txt";

$fh = fopen($myFile, 'w') or die("can't open file");
fwrite($fh, $matches[0];);
fclose($fh);

ありがとう :)

于 2013-04-03T09:21:01.270 に答える