摘要:
序如何实现循环中获取内容中的图片并限制数量功能函数放到自定义函数文件/** * 获取内容中的缩略...
描述:
序
如何实现循环中获取内容中的图片并限制数量功能
函数
放到自定义函数文件
/** * 获取内容中的缩略图 * @param $value 内容值 * @param $num 指定获取数量 * @return 在变量中提取img标签的图片路径到数组 */ function get_content_img($value, $num = 0) { return qh_get_content_url($value, 'src', 'gif|jpg|jpeg|png', $num); }
替换并循环再输出
/** * 获取内容中的指定标签URL地址 * @param $value 内容值 * @param $attr 标签值,例如src * @param $ext 指定扩展名,例如jpg|gif * @param $num 指定获取数量 * @return 在变量中提取img标签的图片路径到数组 */ function qh_get_content_url($value, $attr, $ext, $num = 0) { $rt = []; if (!$value) { return $rt; } $ext = str_replace(',', '|', $ext); $value = preg_replace('/\.('.$ext.')@(.*)(\'|")/iU', '.$1$3', $value); if (preg_match_all("/(".$attr.")=([\"|']?)([^ \"'>]+\.(".$ext."))\\2/i", $value, $imgs)) { $imgs[3] = array_unique($imgs[3]); foreach ($imgs[3] as $i => $img) { if ($num && $i+1 > $num) { break; } $rt[] = trim($img, '"'); } } return $rt; }
使用
<ul class="img-list-more"> {php $imgs = get_content_img($v['content'],3);} {loop $imgs $img} <li> <div class="qh-radius"> <div> <img data-src="{$img}" data-artZoom-show="{$img}" data-artZoom-source="{$img}" src="{$img}" class="qh-radius lazy artZoom"></div> <span class="image-number">+ <b>{dr_count($imgs)}</b> </span> </div> </li>{/loop} </ul>
THE END
请登录后发表评论