PHP怎样判断一个gif图片是否为动态图片(动画)?

时间:2018-05-02 作者:佚名 编辑:xiaoxin 来源:不甘平庸网

如何使用PHP来判断一个gif图片是否为动态图片(动画)?首先想到的是使用getimagesize()函数来看type值,发现都是gif,所以这个办法是不可行的。下面是作者在网上看到的一个函数,经测试,可以用来判断gif是否为动图。

代码如下:

<?php 
/**
 * 
 * @param $filename 图片地址
 * return true 动态图 false 不是动态图
 */
function isAnimatedGif($filename) {

    $fp=fopen($filename,'rb');

    $filecontent=fread($fp,filesize($filename));

    fclose($fp);

    return strpos($filecontent,chr(0x21).chr(0xff).chr(0x0b).'NETSCAPE2.0')===FALSE?0:1;

}

//测试方法:
if(isAnimatedGif(dirname(__FILE__).'/test.gif')){
	echo "该图片为动态图!";
}else{
	echo "该图片不是动态图!";
}
相关阅读
PHP心得推荐
  • linux定时计划任务crontab命令详解
    crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果... [详情]
  • PHP解决如抢购并发问题的几种实现方法
    PHP解决如抢购并发问题的几种实现方法
    对于商品抢购等并发场景下,可能会出现超卖的现象,这时就需要解决并发所带来的这些问题了在PHP语言中并没有原生的提供并发的解决方案,因此就需要借助其他方式来实现并发... [详情]
  • php用Imagick模块完美实现GIF动画缩略图代码实例
    php用Imagick模块完美实现GIF动画缩略图代码实例
    缩略图是个很常用的功能。它的实现并不复杂,但如果原图是GIF动画的话,问题就会变得繁琐一点。下面看看如何用PHP中的Imagick模块来完美实现GIF动画缩略图……... [详情]
  • php cli模式传递和获取参数的方法
    php cli模式传递和获取参数的方法
    在命令行里输入程序参数来更改其运行方式是很常见的做法。你也可以对CLI程序这样做。PHP CLI带有两个特殊的变量,专门用来达到这个。目的:一个是$argv变量,它通过命令行... [详情]
  • PHP 之父:PHP7 性能翻倍关键大揭露
    PHP 之父:PHP7 性能翻倍关键大揭露
    20岁老牌网页程序语言PHP,将在10月底释出PHP 7新版,这是十年来的首次大改版,最大特色是在性能上的大突破,能比前一版PHP 5快上一倍,PHP之父Rasmus Lerdorf表示,甚至能... [详情]
  • PHP开发常用数组函数
    PHP开发常用数组函数,记录下方便查看: [详情]
  • 用PHP正则表达式清除字符串的空白
    我们经常会处理来自用户输入或从数据库中读取的数据,可能在你的字符串中有多余的空白或制表符,回车等。存储这些额外的字符是有点浪费空间的。... [详情]
  • php include加载或查找文件的先后顺序
    include第一次找到某文件后,会缓存结果。下一次include相同的路径时,只取缓存结果而不会多重查找,这就导致了我们移除某文件后可能短暂的时间内include会报错(因为include机制发现缓存结果的路径不存在,不会往下... [详情]
频道推荐
本周推荐
点击排行