我如何从文本中获取img
代码?
现在,如果代码如下所示,我会收到代码和网址:text text <img src = "image.gif" />
,但如果代码为<img src = "image.gif" target = _blank />
,那么我会收到以下网址:"image.gif" target = _blank
。
那么,如何正确找到img
完整代码和网址?
由于
preg_match_all('/\<img src = (.*?)\/>/', $input, $all_img);
答案 0 :(得分:5)
不要尝试使用正则表达式解析HTML;使用像PHP’s DOM library或PHP Simple HTML DOM Parser这样的HTML解析器(请参阅Gordon对其他替代方案的评论)。
这是PHP Simple HTML DOM Parser的一个例子:
$html = str_get_html('…');
foreach ($html->find('img[src]') as $img) {
echo $img->getAttribute('src');
}