<html>
<head>
<title>获取HTML中的img的src值</title>
</head>
<body>
</body>
</html>
<?php
//抓取网页内容
$pageContents = file_get_contents('http://img.zhongsou.com/i/95/190871.html');
//网络上找到以下正则,前两个还不符合需求,大家也可以测试下。
//$reg = '/<img +src=[\'"](http.*?)[\'"]/i'; 能获取到img标签内容
//$reg='/\s+src\s?\=\s?[\'|"]([^\'|"]*)/is'; 能获取到src=''内容,javascript的src也将获取到
//为什么返回$results['imgUrl']在测试时发现这个正则匹配出来的结果是个多维数组,外层是3个数组。
//imgUrl返回的是img中src引号中路径部分,所以返回$results['imgUrl']。
$reg='<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""\']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""\'<>]*)[^<>]*?/?[\s\t\r\n]*>';
preg_match_all( $reg , $pageContents , $results );
var_dump($results['imgUrl']);
echo '<br>************************ 以下打印出来的是$results *****************************<br>';
var_dump($results);
?>