我有以下代码在博客文章中获取随机图片,但我只想获取第一个。我怎样才能重写代码来解决我的问题?
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').'">';
}
}
答案 0 :(得分:2)
我认为更换
$randomPic = array_rand($var[0], 1);
$DOM->loadHTML($var[0][$randomPic]);
简单地通过
$DOM->loadHTML($var[0][0]);
会做到这一点。你是这样明确地从数组中获取第一个元素。
答案 1 :(得分: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').'">';
}
}