2016-04-09 11 views
0

から注目の画像を取得するように - >私は、ユーザーがポストコンテンツ内の画像のURLを入力ブログシステムを持っている投稿内容

hey how are you <img src="www.example.com/image.png" style="height=100px;"> 

は、その後、私はこの[IMG SRC]の行を見つけて、特色としてそれを使用したいです $コンテンツは

preg_match('/(<img .*?>)/', $content, $img_tag); 
$feature = $img_tag[0]; // This preg_match finds img src tag and provide me 
$regex = '~<img.*?src=[\'"](?:view-source:)?([^"\']+).*?\/?>~'; 

$featured = preg_replace($regex, "$1", $feature); 

は誰が出て微調整することができ、問題彼のフォームから投稿コンテンツです:this-> www.example.com/image.png

ここ

のような画像は、私が試したものです再?

+0

投稿の最初の「」タグから 'src'属性を取得したいだけですか?または私は何かを逃していますか? –

答えて

1

あなたがコンテンツの最初<img>タグのsrc属性を抽出しようとしている場合は、あなたが必要なのはこれです:

preg_match_all('/<img.*src="(.*)"/', $content, $matches); 

$featured = isset($matches[1][0]) ? $matches[1][0] : null; 

今、私はここで何が起こっているかを説明しましょう:

preg_match_all文字列全体と一致します。修飾子を追加しない限り、preg_matchは最初の行で停止します。

$matchesアレイの場合、最初のインデックスは一致するグループを表します。一致するグループの数は、式の先頭からグループまでの(の数です。 0は式全体と一致します。したがって、$matches[1]は、src引数の中で一致するグループの結果を表します。

この配列から、最初の要素、つまりコンテンツに最初に一致するimgタグのsrc属性を意味します。

もちろん、コンテンツに画像がなくてもよいので、結果にアクセスする前にissetに電話する必要があります。

私はこれについて説明します。

関連する問題