文字列から画像リンクのみをエコーする関数を作成したいと思います。
私のコードは失敗しますが、理由がわかりません。
function csak_a_kepek($bejovo_szoveg){
$re = '/(?<=src=")(?:.*?)(?=")/ui';
$eredmeny = preg_match('/(<img[^>]+>)/i', $bejovo_szoveg, $matches);
for($i=0;$i<count($matches);$i++){
$nMatches = preg_match($re, $matches[$i], $aMatches);
}
for($i=0;$i<count($aMatches);$i++){
$return .= $aMatches[$i].'/;/';
}
return $return;
}
/;/ は区切り記号で、分解しやすくします。
それを機能させるには、どこを変更する必要がありますか?
作業コード:(redskins80 に感謝)
include('simplehtmldom/simple_html_dom.php');
function only_pictures($string){
$html = str_get_html($string);
foreach($html->find('img') as $element) {
$return .= $element->src . '<br />';
}
return $return;
}