Ejemplo n.º 1
0
 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;
 }
Ejemplo n.º 2
0
 function get_cache_size()
 {
     need_login('ajax');
     $size = dirsize(ROOTDIR . 'cache');
     $cache_size = bytes2u($size);
     echo $cache_size;
 }