मैं फाइल सिस्टम के एन्कोडिंग के एक ऑपरेटिंग सिस्टम को डिफॉल्ट के रूप में डिटेक्ट करना चाहता हूं, जैसे कि विंडोज ओएस अलग-अलग भाषा संस्करण में, यह विभिन्न एन्कोडिंग (आईएसओ -885 9 -1, एमएस 9 50, big5, gb2312..etc) का उपयोग करेगा, तो मैं कैसे पता लगा सकता हूं PHP में एन्कोडिंग की विभिन्न ऑपरेटिंग सिस्टम? कोई उपाय? धन्यवाद।PHP में ऑपरेटिंग सिस्टम एन्कोडिंग का पता लगाने के लिए कैसे?
उत्तर
mb_detect_encoding() का उपयोग क्यों नहीं करते?
लिनक्स में एन्कोडिंग नहीं है, फ़ाइल नाम बाइनरी तारों में संग्रहीत हैं और इसमें कुछ भी शामिल हो सकता है। व्याख्या करना कि एक विशिष्ट एन्कोडिंग में एप्लिकेशन तक है। अक्सर यह यूटीएफ -8 होगा। लेकिन हाँ, यह फ़ाइल नामों के 'दर्शक' पर निर्भर करता है।
ओएस/एक्स पर फाइल सिस्टम डी
रूप UTF-8 सामान्य उपयोग करेगा दुर्भाग्य से, मैं उत्तर नहीं दे सकता कि यह खिड़कियों पर है को एक्सेस करना। आंतरिक रूप से इसे यूटीएफ -16 की विविधता के रूप में संग्रहीत किया जाता है लेकिन मेरी मशीन पर PHP के माध्यम से इसे एक्सेस करने के लिए एपीआई सीपी -1252 है, लेकिन हाँ, यह भाषा पर निर्भर करता है।
print_r(explode(";", setlocale(LC_ALL, 0)));
तब एन्कोडिंग को
FileSystem करता कोड पेज कन्वर्ट जरूरत का प्रयास नहीं एन्कोडिंग का एक प्रकार, प्रत्येक फ़ाइल एन्कोडिंग के विभिन्न प्रकार का उपयोग कर सकते है, इसलिए आप सभी की जरूरत लगता है फ़ाइल नाम स्ट्रिंग को संसाधित करने के लिए एक सही एन्कोडिंग।
फ़ाइल नाम के एन्कोडिंग का पता लगाने के लिए, आप उस फ़ाइल नाम को अपने सभी ज्ञात एन्कोड सूची में कनवर्ट करने के लिए "कोशिश करें" कर सकते हैं, और समेकित स्ट्रिंग के साथ मूल फ़ाइल नाम स्ट्रिंग की तुलना कर सकते हैं, यदि वह बराबर है, तो वह एन्कोडिंग वह है जिसे आप ढूंढ रहे हैं ।
एक स्ट्रिंग को एक प्रकार के एन्कोडिंग में कनवर्ट करें जिसे मैं This way का उपयोग करता हूं। तो यह काम करने के लिए, आप उदाहरण के लिए निम्नलिखित कोड देख सकते हैं।
function getActuallEncoding($text) {
$encodingList = array('UTF-8', 'gb2312', 'ISO-8859-1', 'big5'); // Add more if you need.
foreach($encodingList as $oneEncode) {
$oneResult = iconv(mb_detect_encoding($text, mb_detect_order(), true), $oneEncode, $text);
if(md5($oneResult) == md5($text)) return $oneEncode;
}
return "UNKNOWN"; // This return value may cause problem, just let you know.
}
आशा है कि मदद करता है।
- 1. PHP फाइलिंग सिस्टम एन्कोडिंग का पता लगाने
- 2. jQuery - ऑपरेटिंग सिस्टम और ऑपरेटिंग सिस्टम संस्करण का पता लगाने
- 3. रेल 3 में उपयोगकर्ता के ऑपरेटिंग सिस्टम का पता लगाने का सबसे आसान तरीका क्या है?
- 4. PHP में कोड निष्पादन का पता लगाने के लिए कैसे?
- 5. Google क्रोम एक्सटेंशन से ऑपरेटिंग सिस्टम का पता लगाएं
- 6. चल रहे ऑपरेटिंग सिस्टम का पता कैसे लगाएं?
- 7. आर में ऑपरेटिंग सिस्टम का पता लगाना (उदाहरण के लिए अनुकूली के लिए .profile फाइलें)
- 8. एक ऑपरेटिंग सिस्टम का विकास
- 9. वीएमवेयर - वर्चुअल ऑपरेटिंग सिस्टम स्थिर आईपी पता
- 10. सैंडबॉक्सेड ऑपरेटिंग सिस्टम
- 11. माईस्क्ल/innodb में deadlocks का पता लगाने के लिए कैसे?
- 12. एक्सएमएल फ़ाइल में एन्कोडिंग का सबसे अच्छा पता लगाने के लिए कैसे?
- 13. सी में हस्ताक्षरित पूर्णांक पर एन्कोडिंग का पता लगाने के लिए कैसे?
- 14. अध्ययन के लिए सर्वश्रेष्ठ शैक्षणिक ऑपरेटिंग सिस्टम?
- 15. एम्बेडेड सिस्टम के लिए आवश्यक ऑपरेटिंग सिस्टम के बिना डेटाबेस
- 16. क्लाइंट के ऑपरेटिंग सिस्टम का नाम
- 17. ऑपरेटिंग सिस्टम संकलन समय
- 18. जावा ऐप के लिए सिस्टम ट्रेएकॉन पर एकल क्लिक का पता लगाने के लिए कैसे?
- 19. सिस्टम कॉल के लिए प्रक्रिया का पता लगाने के लिए कैसे?
- 20. elisp में ऑपरेटिंग सिस्टम कैसे निर्धारित करें?
- 21. PHP मोबाइल ब्राउज़र का पता लगाने?
- 22. ऑपरेटिंग सिस्टम संस्करण एएसपीनेट
- 23. एक बुनियादी ऑपरेटिंग सिस्टम
- 24. यह पता लगाने के लिए कि कोई उपयोगकर्ता PHP
- 25. डेटाबेस-समर्थित ऑपरेटिंग सिस्टम
- 26. क्लासपाथ में डुप्लिकेट जेएआर का पता लगाने के लिए कैसे?
- 27. ओपनसीवी में ज्ञात वस्तुओं का पता लगाने के लिए कैसे?
- 28. किसी छवि में आकार का पता लगाने के लिए कैसे?
- 29. जावास्क्रिप्ट में JSON समर्थन का पता लगाने के लिए कैसे?
- 30. jQuery में क्षैतिज स्क्रॉलिंग का पता लगाने के लिए कैसे?
क्या आपने एन्कोडिंग पहचान के संबंध में SO पर अन्य प्रश्नों की जांच की है? उदाहरण के लिए इसे देखें: http://stackoverflow.com/questions/910793/php-detect-encoding-and-make-everything-utf-8 या यह एक: http://stackoverflow.com/questions/505562/ पता-फ़ाइल-एन्कोडिंग-इन-php –
मुझे यकीन नहीं है कि फ़ाइल सिस्टम एन्कोडिंग का प्रतिनिधि है ... mb_list_encodings समर्थित एन्कोडिंग की एक सूची लौटाएगा। – Incognito
यह मुझे जवाब नहीं चाहिए और यह मेरे साथ अलग सवाल है – Jasper