EMLOG获取文章外链图片数量和数据库上传图片数量
对于EMLOG模板开发者来说,有的时候为了排版等需要判断一下文章内包含的外链图片或数据库上传图片的数量,但EMLOG官方并没有提供现成的调用代码给我们使用,那么现在就来为大家分享一个EMLOG获取文章外链图片数量和数据库上传图片数量的代码。
一、操作步骤
1、打开模板文件module.php,在合适的位置粘贴如下代码
<?php function lanye_imgcount($content){ //正则获取文章内的外链图片数量 preg_match_all("|<img[^>]+src=\"([^>\"]+)\"?[^>]*>|is", $content, $imgarr); $result = $imgarr[1]; return count($result); } function lanye_filecount($logid){ //查询数据库统计文章内上传的图片数量 $db = Database::getInstance(); $sql = "SELECT COUNT(*) AS `filepath` FROM ".DB_PREFIX."attachment WHERE blogid=$logid AND (`filepath` LIKE '%jpg' OR `filepath` LIKE '%gif' OR `filepath` LIKE '%png' OR `filepath` LIKE '%jpeg') and `filepath` not like '%thum-%' ORDER BY `aid` asc"; $result = $db->fetch_array($db->query($sql)); $count = $result['filepath']; return $count; } ?>
2、打开模板文件log_list.php或echo_log.php,在合适的位置粘贴如下代码,其中
获取外链图片数量的调用代码:
<?php echo lanye_imgcount($content)?>
获取数据库上传图片数量的调用代码
<?php echo lanye_filecount($logid)?>
二、原理解析
通过PHP代码进行判断,判断文章内的图片是直接通过后台上传的还是外链图片,然后统计数量并调用
三、注意事项
1、本教程第2步的代码可以放置在列表页模板里,也可以放置在文章页模板里