专注Php网页设计制作小程序开发外贸网站功能定制 - (承接设计制作/小程序手机站功能订制seo优化维护等) :673592626:280934751:865129233

电商资源网

PHP在文章无缩略图时抓取单张或者多张文章内容图片

时间:2019-10-22所属栏目:其它教程 来源: 电商之家

1.写一个方法专门做抓取图片。

 


  1. function getImgs($content,$order='ALL'){
  2. $pattern="/<img.*?src=[\'|\"](.*?(?:[\.gif|\.jpg]))[\'|\"].*?[\/]?>/";
  3. preg_match_all($pattern,$content,$match);
  4. if(isset($match[1])&&!empty($match[1])){
  5. if($order==='ALL'){
  6. return $match[1];
  7. }
  8. if(is_numeric($order)&&isset($match[1][$order])){
  9. return $match[1][$order];
  10. }
  11. }
  12. return '';
  13. }
2.利用查询出列表页的文章ID去查询内容

 

 


  1. $result = $db->query("SELECt ".$MOD['fields']." FROM {$table} WHERe $condition ORDER BY $order LIMIT $offset,$pagesize");
  2. while($r = $db->fetch_array($result)) {
  3. if($kw) $r['title'] = str_replace($kw, '<b class="f_red">'.$kw.'</b>', $r['title']);
  4. $r['linkurl'] = mobileurl($moduleid, 0, $r['itemid']);
  5. $r['date'] = timetodate($r[$time], $page < 4 ? 2 : 3);
  6. $lists[] = $r;
  7. }
  8.  
  9. // 获取内容
  10. foreach($lists as $key=>$val){
  11. $t = $db->query("SELECT content FROM taomodi_article_data_21 WHERe itemid=".$val['itemid']);
  12. while($res = $db->fetch_array($t)){
  13. $content = video5($res['content']);
  14. $content = str_replace('<hr class="de-pagebreak"/>', '', $content);
  15. //调用方法
  16. $val['content'] = getImgs($content);
  17. $lists[$key] = $val;
  18. }
  19. }
  20. // var_dump($lists);die;
3.模板中使用

 

 


  1. {loop $lists $vv}
  2. <li>
  3. <a href="{$vv[linkurl]}">
  4. <div class="{if count($vv[content])==1 && !empty($vv[content])}article_left{/if}">
  5. <dt>{$vv[title]}</dt>
  6. <dd>{php $res = dsubstr($vv['introduce'],'80','...');echo str_replace(' ','',$res);}</dd>
  7. </div>
  8. <div class="{if count($vv[content])==1 && !empty($vv[content])}article_right{/if}">
  9. <dd>
  10. {if $vv[content]}
  11. {loop $vv[content] $k $v}
  12. {php if($k >=3) break;}
  13. <img src="{$v}" id="{if count($vv[content])==1 && !empty($vv[content])}article_img{/if}"/>
  14. {/loop}
  15. {/if}
  16. </dd>
  17. </div>
  18. <div class="clear"></div>
  19. </a>
  20. </li>
  21. {/loop}
  22.  
顶一下
(0)
0%
踩一下
(0)
0%
分享:
 
QQ在线咨询