我目前有这个功能从RSS Feed中的CDATA中获取图像src字段。
function echo_url($string) {
preg_match_all('#\bhttps?://[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/))#', $string, $match);
return $match[0][0];
}
唯一不好的是它拿起了CDATA中出现的第一个URL而不是图像src本身,无论如何我是否可以访问或返回图像src而不是第一个URL?
这是我得到的CDATA的一个例子。
![CDATA[Duration: 357 sec<br>URL: http://www.test.com/videos/999682/test-test-video<br><img src="http://test.com/images/test.jpg"><br><iframe src="http://embeds.test.com/embed/999682" frameborder=0 width=650 height=518 scrolling=no></iframe>]]
获得之后的所有内容都是&#39; img src&#39;。
任何帮助都会很精彩(在php的初学者身上)
由于
答案 0 :(得分:1)
如果您只想返回图像源,则此功能将起作用:
/**
* @param string $cdata
* @return string|FALSE
*/
function getImgSrc($cdata)
{
$found = preg_match("/img src=\"([^\"]+)\"/", $cdata, $match);
if ($found)
{
return $match[1];
}
else
{
return FALSE;
}
}