如何检测* .ico文件是否是PHP中的有效图标

时间:2010-08-01 14:09:22

标签: php icons ico

我想测试* .ico图像是否是PHP中的有效图标。我尝试使用getimagesize函数,但它不支持ICO文件。

4 个答案:

答案 0 :(得分:4)

http://en.wikipedia.org/wiki/ICO_(file_format)

图标必须以'0x00 0x00 0x01 0x00'字节开头,对于简单测试应该足够了。

答案 1 :(得分:1)

ico文件主要是图像文件,如果你将jpeg或gif / png更改为ico扩展名它可以正常工作,所以如果你保持图像类型cheking它将完成这项工作

答案 2 :(得分:0)

答案 3 :(得分:0)

https://github.com/lordelph/icofileloader是一个可编写者安装的软件包,用于读取.ico文件。要检查和检查.ico文件,您可以调整此示例:

$loader = new Elphin\IcoFileLoader\IcoFileService;

//parse ico file
try {
    $icon = $loader->fromFile('/path/to/icon.ico');

    //we can iterate over the images in the icon
    foreach ($icon as $idx => $image) {
        printf("image %d is %s\n", $idx, $image->getDescription());
    }
}
catch (\Exception $e) {
     echo "not a valid .ico file";
}