strtr बनाम str_replace: विभिन्न प्रतिस्थापन कार्यों का उपयोग कब करें
PHP में, strtr और str_replace दोनों फ़ंक्शन स्ट्रिंग प्रतिस्थापन कर सकते हैं। हालाँकि, सही फ़ंक्शन चुनना विशिष्ट आवश्यकताओं और उपयोग के मामलों पर निर्भर करता है। दो कार्यों के बीच सूक्ष्म अंतर:
echo strtr('test string', 'st', 'XY'); // "येएक्सवाई एक्सवाईरिंग" इको str_replace(सरणी('एस', 'टी'), सरणी('एक्स', 'वाई'), 'टेस्ट स्ट्रिंग'); // "YeXY XYring"strtr सबस्ट्रिंग को दाएं से बाएं ओर बदलता है, जबकि str_replace बाएं से दाएं बदलता है। ओवरलैपिंग सबस्ट्रिंग को प्रतिस्थापित करते समय यह अंतर स्पष्ट हो जाता है:
echo strtr('1 2 3 3', '1 2 3', 'XYZ'); // "1 2 3 जेड" इको str_replace(सरणी('1 2 3', '1 2'), सरणी('XYZ', 'AB'), '1 2 3 3'); // "ABXYZ"
echo strtr('test string', 'st', 'XY'); // "YeXY XYring" echo str_replace(array('s', 't'), array('X', 'Y'), 'test string'); // "YeXY XYring"ऐरे कुंजी बनाम मल्टीपल सबस्ट्रिंग्स को बदलना
echo strtr('1 2 3 3', '1 2 3', 'XYZ'); // "1 2 3 Z" echo str_replace(array('1 2 3', '1 2'), array('XYZ', 'AB'), '1 2 3 3'); // "ABXYZ"
$arr = array ("1" => "ए", "2" => "बी", "3" => "सी"); प्रतिध्वनि strtr('123', $arr); // "एबीसी" इको str_replace(array_keys($arr), array_values($arr), '123'); // "एबीसी"इस मामले में, दोनों फ़ंक्शन वर्णों को उनके संबंधित सरणी मानों से प्रतिस्थापित करते हैं। हालाँकि, strtr को कुंजी-मूल्य जोड़े के साथ एक सहयोगी सरणी की आवश्यकता होती है, जबकि str_replace सबस्ट्रिंग और प्रतिस्थापन के सरल सरणियों पर काम कर सकता है।
प्रतिस्थापन प्राथमिकताecho strtr('test string', 'st', 'XY'); // "YeXY XYring" echo str_replace(array('s', 't'), array('X', 'Y'), 'test string'); // "YeXY XYring"
strtr के आधार पर प्रतिस्थापन को प्राथमिकता देता है प्रतिस्थापित की जा रही सबस्ट्रिंग की लंबाई, अवरोही क्रम। इसके विपरीत, str_replace प्रतिस्थापन सरणी में परिभाषित क्रम में प्रतिस्थापन की प्रक्रिया करता है। इसके अलग-अलग परिणाम हो सकते हैं, जैसा कि निम्नलिखित उदाहरण से पता चलता है:
$text = "PHP: हाइपरटेक्स्ट प्रीप्रोसेसर"; $text_strtr = strtr($text, array("PHP: हाइपरटेक्स्ट प्रीप्रोसेसर" => "PHP", "PHP" => "PHP: हाइपरटेक्स्ट प्रीप्रोसेसर")); $text_str_replace = str_replace(सरणी("PHP", "PHP: हाइपरटेक्स्ट प्रीप्रोसेसर"), array("PHP: हाइपरटेक्स्ट प्रीप्रोसेसर", "PHP"), $text); var_dump($text_strtr); // स्ट्रिंग(3) "PHP" var_dump($text_str_replace); // स्ट्रिंग(27) "PHP: हाइपरटेक्स्ट प्रीप्रोसेसर"निष्कर्ष में, strtr और str_replace दोनों PHP में स्ट्रिंग प्रतिस्थापन के लिए अलग-अलग दृष्टिकोण प्रदान करते हैं। व्यवहार और वाक्य रचना में उनकी सूक्ष्म बारीकियों को समझने से आपको अपने विशिष्ट उपयोग के मामले के लिए उपयुक्त फ़ंक्शन चुनने में मार्गदर्शन मिलेगा।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3