function parse_exif($infos) { if (!$infos['Make'] && !$infos['Model']) { return false; } $ExposureProgram = array(lang("not_defined"), lang('manual'), lang('standard_procedure'), lang('aperture_priority'), lang('shutter_priority'), lang('depth_priority'), lang('sport_mode'), lang('portrait_mode'), lang('landscape_mode')); $Orientation = array("", lang('top_left'), lang('top_right'), lang('bottom_right'), lang('bottom_left'), lang('left_top'), lang('right_top'), lang('right_bottom'), lang('left_bottom')); $ResolutionUnit = array("", "", lang('in-ch'), lang('cm')); $MeteringMode_arr = array("0" => lang('unkown'), "1" => lang('avg'), "2" => lang('center_weighted_average'), "3" => lang('point_measurement'), "4" => lang('zoning'), "5" => lang('assess'), "6" => lang('portion'), "255" => lang('others')); $Lightsource_arr = array("0" => lang('unkown'), "1" => lang('sun_light'), "2" => lang('fluorescent'), "3" => lang('tungsten'), "10" => lang('flash_lamp'), "17" => lang('standard_lighting_A'), "18" => lang('standard_lighting_B'), "19" => lang('standard_lighting_C'), "20" => lang('d55'), "21" => lang('d65'), "22" => lang('d75'), "255" => lang('others')); $Flash_arr = array(0x0 => lang('close'), 0x1 => lang('open'), 0x5 => lang('open1'), 0x7 => lang('open2'), 0x9 => lang('open3'), 0xd => lang('open4'), 0xf => lang('open5'), 0x10 => lang('open6'), 0x18 => lang('close1'), 0x19 => lang('open7'), 0x1d => lang('open8'), 0x1f => lang('open9'), 0x20 => lang('no_flash'), 0x41 => lang('open10'), 0x45 => lang('open11'), 0x47 => lang('open12'), 0x49 => lang('open13'), 0x4d => lang('open14'), 0x4f => lang('open15'), 0x59 => lang('open16'), 0x5d => lang('open17'), 0x5f => lang('open18')); if (is_array($infos)) { $new_img_info = array(); foreach ($infos as $k => $info) { if ($info === false) { continue; } switch ($k) { case 'Flash': $new_img_info[$k] = isset($Flash_arr[$info]) ? $Flash_arr[$info] : lang('unkown'); break; case 'FileSize': $new_img_info[$k] = bytes2u($info); break; case 'FocalLength': $new_img_info[$k] = $info . 'mm'; break; case 'FocalLengthIn35mmFilm': $new_img_info[$k] = $info . 'mm'; break; case 'FocusDistance': $new_img_info[$k] = $info . 'm'; break; case 'WhiteBalance': $new_img_info[$k] = $info ? lang('manual') : lang('auto'); break; case 'ExposureBiasValue': $new_img_info[$k] = $info . 'EV'; break; case 'Orientation': $new_img_info[$k] = $Orientation[$info]; break; case 'XResolution': $new_img_info[$k] = $info . $ResolutionUnit[$infos["ResolutionUnit"]]; break; case 'YResolution': $new_img_info[$k] = $info . $ResolutionUnit[$infos["ResolutionUnit"]]; break; case 'MaxApertureValue': $new_img_info[$k] = 'F' . $info; break; case 'MeteringMode': $new_img_info[$k] = isset($MeteringMode_arr[$info]) ? $MeteringMode_arr[$info] : lang('unkown'); break; case 'LightSource': $new_img_info[$k] = isset($Lightsource_arr[$info]) ? $Lightsource_arr[$info] : lang('unkown'); break; case 'ColorSpace': $new_img_info[$k] = $info == 1 ? "sRGB" : "Uncalibrated"; break; case 'ExposureMode': $new_img_info[$k] = $info ? lang('manual') : lang('auto'); break; case 'ExposureProgram': $new_img_info[$k] = isset($ExposureProgram[$info]) ? $ExposureProgram[$info] : lang('unkown'); break; case 'GPSLatitude': $dgree = getGps($info); $new_img_info[$k] = (isset($infos["GPSLatitudeRef"]) ? $infos["GPSLatitudeRef"] . ' ' : '') . dgreeToNum($dgree); break; case 'GPSLongitude': $dgree = getGps($info); $new_img_info[$k] = (isset($infos["GPSLongitudeRef"]) ? $infos["GPSLongitudeRef"] . ' ' : '') . dgreeToNum($dgree); break; case 'GPSLatitudeRef': continue; break; case 'GPSLongitudeRef': continue; break; default: $new_img_info[$k] = $info; } } } unset($new_img_info['ResolutionUnit']); return $new_img_info; }
function get_cache_size() { need_login('ajax'); $size = dirsize(ROOTDIR . 'cache'); $cache_size = bytes2u($size); echo $cache_size; }