PHP验证是否为图片格式文件


/**
 * 判断是否为图片格式(jpg/jpeg/gif/png)文件
 *
 * @param string $filePath
 * @return bool|string
 */
function isImg($filePath)
{
    if (!is_file($filePath)) {
        return false;
    }
    $file = fopen($filePath, "rb");
    $bin = fread($file, 2); // 只读2字节

    fclose($file);
    $strInfo = @unpack("C2chars", $bin);
    $typeCode = intval($strInfo['chars1'] . $strInfo['chars2']);
    switch ($typeCode) {
        case 255216:
            $fileType = 'jpg';
            break;
        case 7173:
            $fileType = 'gif';
            break;
        case 13780:
            $fileType = '13780';
            break;
        default:
            $fileType = false;
            break;
    }
    return $fileType;
}

posted @   栖息地  阅读(512)  评论(1编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示