/**
 * 网络图片转base64
 */
if (!function_exists('interImageToBase64')) {
    function interImageToBase64($image_file, $full = false)
    {
        $options = [
            // 缓存类型为File
            'type'  =>  'File',
            // 缓存有效期为永久有效
            'expire' =>  0,
            //缓存前缀
            'prefix' =>  'poster',
            // 指定缓存目录
            'path'  =>  ROOT_PATH . 'runtime/poster/',
        ];
        cache($options);
        $key = md5($image_file);
        $info = cache($key);
        if ($info) {
            return $info;
        }
        $image_file = str_replace(['\\', 'https'], ['/', 'http'], $image_file);
        $base64_file = '';
        //获取图片的类型
        $suffix = getfilesuffix($image_file);
        if ($suffix != 'unknow') {
            //将图片进行base64编码
            $base64_data = base64_encode(file_get_contents($image_file));
            $base64_file = 'data:' . $suffix . ';base64,' . $base64_data;
            $info = $full ? ['type' => $suffix, 'data' => $base64_file, '_format' => 1] : ['type' => $suffix, 'data' => $base64_data, '_format' => 1];
            cache($key, $info);
            return $info;
        }
        return '';
    }
}

/*
@desc:获取文件真实后缀
@param   name    文件名
@return  suffix  文件后缀
*/
if (!function_exists('getfilesuffix')) {
    function getfilesuffix($name)
    {
        $file = fopen($name, "rb");
        $bin = fread($file, 2); // 只读2字节
        fclose($file);
        $info = @unpack("C2chars", $bin);
        $code = intval($info['chars1'] . $info['chars2']);
        $suffix = "unknow";
        if ($code == 255216) {
            $suffix = "jpg";
        } elseif ($code == 7173) {
            $suffix = "gif";
        } elseif ($code == 13780) {
            $suffix = "png";
        } elseif ($code == 6677) {
            $suffix = "bmp";
        } elseif ($code == 7798) {
            $suffix = "exe";
        } elseif ($code == 7784) {
            $suffix = "midi";
        } elseif ($code == 8297) {
            $suffix = "rar";
        } elseif ($code == 7368) {
            $suffix = "mp3";
        } elseif ($code == 0) {
            $suffix = "mp4";
        } elseif ($code == 8273) {
            $suffix = "wav";
        }
        return $suffix;
    }
}