我有以下代码来获取博客文章中的随机图片,但我只想获取第一张。我如何重写代码来解决我的问题?
preg_match_all('/<img[^>]+>/i', $row["content"], $var);
if(!count($var[0]) == 0)
{
$randomPic = array_rand($var[0], 1);
$DOM->loadHTML($var[0][$randomPic]);
$tag = $DOM->getElementsByTagName('img');
foreach ($tag as $i) {
echo '<img src="'.$i->getAttribute('src').'">';
}
}
我认为替换
$randomPic = array_rand($var[0], 1);
$DOM->loadHTML($var[0][$randomPic]);
通过
$DOM->loadHTML($var[0][0]);
会成功的。通过这种方式,您可以显式地从数组中获取第一个元素。
最简单的方法是:
preg_match_all('/<img[^>]+>/i', $row["content"], $var);
if(!count($var[0]) == 0)
{
$randomPic = $var[0]; // Only line I changed is this
$DOM->loadHTML($var[0][$randomPic]);
$tag = $DOM->getElementsByTagName('img');
foreach ($tag as $i) {
echo '<img src="'.$i->getAttribute('src').'">';
}
}