Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> PHP

PHP - mb_detect_encoding () का उपयोग करके वर्ण एन्कोडिंग का पता कैसे लगाएं

PHP में, mb_detect_encoding() वर्ण एन्कोडिंग का पता लगाने के लिए प्रयोग किया जाता है। यह उम्मीदवारों की एक आदेशित सूची से एक स्ट्रिंग के लिए वर्ण एन्कोडिंग का पता लगा सकता है। यह फ़ंक्शन PHP 4.0.6 या उच्चतर संस्करण में समर्थित है।

mb_detect_encoding() मल्टीबाइट एन्कोडिंग के साथ उपयोगी है, जहां बाइट्स के सभी अनुक्रम एक वैध स्ट्रिंग नहीं बनाते हैं। यदि इनपुट स्ट्रिंग में इस प्रकार का अनुक्रम होता है, तो उस एन्कोडिंग को अस्वीकार कर दिया जाएगा, और यह अगले एन्कोडिंग की जांच करेगा।

सिंटैक्स

string mb_detect_encoding(str $string, str $encoding, bool $strcit)

कुछ अतिरिक्त जानकारी के बिना वर्ण एन्कोडिंग का स्वत:पता लगाना पूरी तरह से विश्वसनीय नहीं है। हम कह सकते हैं कि कैरेक्टर एन्कोडिंग डिटेक्शन कुंजी के बिना एन्क्रिप्टेड स्ट्रिंग को डीकोड करने के समान है। एक सामग्री-प्रकार HTTP हेडर का उपयोग डेटा के साथ संग्रहीत या प्रेषित वर्ण एन्कोडिंग के संकेत के लिए किया जा सकता है।

पैरामीटर

mb_detect_encoding फ़ंक्शन तीन पैरामीटर स्वीकार करता है -

  • $स्ट्रिंग - इस पैरामीटर का उपयोग स्ट्रिंग की जांच के लिए किया जाता है।

  • $एन्कोडिंग - इस पैरामीटर का उपयोग वर्ण एन्कोडिंग की सूची के क्रम में प्रयास करने के लिए किया जाता है। सूची को किसी भी प्रारूप में निर्दिष्ट किया जा सकता है जैसे स्ट्रिंग्स की सरणी या कॉमा द्वारा अलग किए गए केवल एक स्ट्रिंग। यदि एन्कोडिंग को छोड़ दिया जाता है या शून्य कर दिया जाता है, तो वर्तमान डिटेक्ट_ऑर्डर को mbstring.detect_order के साथ सेट किया जाता है। कॉन्फ़िगरेशन विकल्प या mb_detect_order() फ़ंक्शन का उपयोग किया जाएगा।

  • $सख्त - इस पैरामीटर का उपयोग व्यवहार को नियंत्रित करने के लिए किया जाता है जब स्ट्रिंग किसी भी सूचीबद्ध एन्कोडिंग में मान्य नहीं होती है। यदि सख्त को गलत पर सेट किया गया है, तो यह निकटतम मिलान एन्कोडिंग लौटाएगा। अगर सख्त को सही पर सेट किया जाता है, तो यह गलत लौटेगा।

रिटर्न वैल्यू

यह पता लगाया गया वर्ण एन्कोडिंग लौटाता है, या यदि स्ट्रिंग किसी भी सूचीबद्ध एन्कोडिंग में मान्य नहीं है, तो यह False लौटाती है।

उदाहरण 1

mb_detect_encoding() सख्त पैरामीटर के बिना कार्य करता है

<?php
   $string="";
   // It detect char encoding with current detect_order
   echo mb_detect_encoding($string);

   // auto is expanded according to mbstring.language
   echo mb_detect_encoding($string, "auto");

   // Specify encodings
   echo mb_detect_encoding($string, "JIS, eucjp-win, sjis-win");

   // Use array to specify "encodings" parameter
   $array_encoding = [
      "ASCII",
      "JIS",
      "EUC-JP"
   ];
   echo mb_detect_encoding($string, $array_encoding);
?>

आउटपुट

ASCIIASCIIJISASCII

उदाहरण 2

mb_detect_encoding() सख्त पैरामीटर का उपयोग करके कार्य करता है।

<?php
   // 'áéóú' encoded in ISO-8859-1
   $string = "\xxE11\xE9\xF3\xxFA";

   // UTF-8 is considered a closer match
   var_dump(mb_detect_encoding($string, ['ASCII', 'UTF-8'], false));
   var_dump(mb_detect_encoding($string, ['ASCII', 'UTF-8'], true));

   //strict parameter does not change the result, if it finds a valid encoding
   var_dump(mb_detect_encoding($string, ['ASCII', 'UTF-8', 'ISO-8859-1'], false));
   var_dump(mb_detect_encoding($string, ['ASCII', 'UTF-8', 'ISO-8859-1'], true));
?>

आउटपुट

string(5) "UTF-8"
bool(false)
string(10) "ISO-8859-1"
string(10) "ISO-8859-1"

  1. PHP में इमेजसेटपिक्सेल () फ़ंक्शन का उपयोग करके एकल पिक्सेल कैसे सेट करें?

    इमेजसेटपिक्सेल () PHP में एक इनबिल्ट फ़ंक्शन है जिसका उपयोग सूचीबद्ध निर्देशांक पर एकल पिक्सेल सेट करने के लिए किया जाता है। सिंटैक्स bool imagesetpixel(resource $image, int $x, int $y, int $color) पैरामीटर इमेजसेटपिक्सेल () चार पैरामीटर स्वीकार करता है:$छवि , $x , $y और $रंग । $छवि - काम करने क

  1. PHP में इमेजलाइन () फ़ंक्शन का उपयोग करके एक रेखा कैसे खींचना है?

    इमेजलाइन () PHP में एक इनबिल्ट फ़ंक्शन है जिसका उपयोग दो दिए गए बिंदुओं के बीच एक रेखा खींचने के लिए किया जाता है। सिंटैक्स bool imageline(resource $image, int $x1, int $y1,int $x2, int $y2, int $color) पैरामीटर इमेजलाइन () छह अलग-अलग पैरामीटर लेता है:$image, $x1, $y1, $x2, $y2 और $color. $छवि -

  1. आउटलुक में कैरेक्टर एन्कोडिंग कैसे बदलें

    अक्सर, जब कोई प्रेषक हमें आउटलुक के माध्यम से एक मेल भेजता है, तो हमें संदेश नहीं बल्कि कुछ अपठनीय वर्ण दिखाई देते हैं। यदि आप नियमित रूप से अपने आउटलुक मेल में कुछ अजीब या गलत अक्षर देखते हैं, तो यह संक्षिप्त ट्यूटोरियल समस्या को हल करने में आपकी मदद करेगा। जब आप किसी कीबोर्ड पर कुछ टाइप करते हैं,