मैं एक छोटी सी लिपि लिख रहा हूं जो छवियों से कुछ exif मूल्यों को इकट्ठा करता है ... अर्थात् निर्माण की तारीख, बनाना और मॉडल।PHP/(खराब) exif डेटा/चेतावनियां, क्या करना है?
मैं देख रहा हूं (विशेष रूप से डिफ़ॉल्ट आईफ़ोन मेल ऐप के माध्यम से मेल की गई छवि के साथ) कि exif डेटा बदल दिया गया है, जो एक ज्ञात समस्या है (मेल ऐप उन्हें भेजने से पहले छवियों को संपीड़ित करता है, भले ही 'पूर्ण आकार' चयनित)। जिन मूल्यों को मैं ढूंढ रहा हूं वे वहां दिखाई देते हैं, हालांकि मुझे उन तक पहुंचने वाली PHP चेतावनियां मिलती हैं। वास्तव में मूल्यों को प्राप्त करने में कोई समस्या नहीं है, लेकिन चेतावनी स्पष्ट रूप से मेरे लिए काम नहीं कर रही है।
कॉलिंग ini_set ('display_errors', 0) चेतावनियों को छुपाता है, लेकिन मेरे लिए मैला लगता है। इस परिदृश्य के लिए, इस चेतावनी के लिए, मैं इस चेतावनी को अनदेखा कर सकता हूं कि थोड़ा बेहतर है?
मेरा प्रारंभिक विचार कोशिश/पकड़ में सब कुछ लपेट रहा था, लेकिन चेतावनी अभी भी पृष्ठ पर प्रमुख रूप से प्रदर्शित होती है।
मैं बस मानक exif_read_data() फ़ंक्शन का उपयोग कर रहा हूं, मुझे लगता है कि बाहरी पुस्तकालय मुझे जितनी छोटी आवश्यकता होगी उसके लिए थोड़ा सा होगा।
पीएचपी:
if($_GET['i']) { $input = strtolower($_GET['i'] . ".jpg"); if(file_exists($input)) { $exif = exif_read_data($input); foreach($exif as $key => $value) { if(!in_array($key, Array("DateTime","Make","Model"))) { unset($exif[$key]); } } ksort($exif); print_r($exif); } }
चेतावनी:
Warning: exif_read_data(trailmarker.jpg) [exif_read_data]: Illegal IFD size: x00C4 + 2 + x3239*12 = x25B70 > x2B74 in C:\xampp\htdocs\exif\dumpfolder\exif.php on line 5
क्या आप सटीक कोड का उपयोग कर रहे हैं, और आपको सटीक चेतावनियां मिल रही हैं? –
' Php $ इनपुट =" someimage.jpg "; $ परिणाम = exif_read_data ($ इनपुट); foreach ($ key => $ value के रूप में $ परिणाम) { अगर (! In_array ($ कुंजी, ऐरे ("डेटटाइम", "मेक", "मॉडल"))) { अनसेट ($ परिणाम [$ कुंजी]); } } ?> ' – Jeff
आह, अच्छी तरह से मुझे नहीं पता कि स्टैक ओवरव्लो का उपयोग कैसे करें ... :( – Jeff