如果利用php来判断就简单了,原理很简单,识别是否是动画,要检查文件中是否包含chr(0×21).chr(0xff).chr(0x0b).’NETSCAPE2.0‘chr(0×21).chr(0xff),是gif图片中扩展功能段的标头‘NETSCAPE2.0‘是扩展功能执行的程序名,代码如下。
- <?php
- 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;
- }
- echo IsAnimatedGif("test.gif");
- ?>
|