PHP में, mb_ereg_replace_callback() फ़ंक्शन का उपयोग नियमित अभिव्यक्ति खोज करने के लिए किया जाता है और इसे कॉलबैक का उपयोग करके मल्टीबाइट समर्थन के साथ प्रतिस्थापित किया जाता है। यह स्ट्रिंग्स को स्कैन करेगा और उन्हें एक पैटर्न के साथ मिलाएगा, फिर यह मिलान किए गए टेक्स्ट को कॉलबैक फ़ंक्शन के आउटपुट से बदल देगा। यह फ़ंक्शन mb_ereg_replace() . जैसा है समारोह। यह PHP 5.4 या उच्चतर संस्करण में समर्थित है।
सिंटैक्स
string mb_ereg_replace_callback(str $pattern, callback $callback, str $string, str $options)
पैरामीटर
फ़ंक्शन निम्नलिखित चार मापदंडों को स्वीकार करता है -
-
$पैटर्न - इस पैरामीटर का उपयोग रेगुलर एक्सप्रेशन पैटर्न के लिए किया जाता है। यह एक पैटर्न में मल्टीबाइट वर्णों का उपयोग कर सकता है।
-
$कॉलबैक - इस पैरामीटर को विषय स्ट्रिंग में मिलान किए गए तत्वों की एक सरणी कहा जाएगा और पास किया जाएगा और इसे प्रतिस्थापन स्ट्रिंग वापस करनी चाहिए।
-
$स्ट्रिंग - इस पैरामीटर का इस्तेमाल स्ट्रिंग को चेक करने के लिए किया जाता है।
-
$विकल्प - इस पैरामीटर का इस्तेमाल सर्च ऑप्शन को चेक करने के लिए किया जाता है।
नोट - कॉलबैक फ़ंक्शन को अक्सर mb_ereg_replace_callback() . की आवश्यकता होती है सिर्फ एक जगह में। आप एक अनाम फ़ंक्शन का भी उपयोग कर सकते हैं कॉल के भीतर कॉलबैक घोषित करने के लिए mb_ereg_replace_callback() . इसका उपयोग करके, हम कॉल के लिए सभी जानकारी एक ही स्थान पर प्राप्त कर सकते हैं और फ़ंक्शन नेमस्पेस को कॉलबैक फ़ंक्शन के नाम से गड़बड़ नहीं कर सकते जो कहीं और उपयोग नहीं किया जाता है।
रिटर्न वैल्यू
mb_ereg_replace_callback() परिणामी स्ट्रिंग के लिए सफलता लौटाता है या यह त्रुटि पर गलत लौटाता है। यदि स्ट्रिंग वर्तमान एन्कोडिंग के लिए मान्य नहीं है, तो यह NULL लौटाता है।
उदाहरण 1
<?php $result = "April Fools day is 04/01/2019\n"; $result.= "Next match is 12/24/2021\n"; // callback function function next_year($matches) { return $matches[1].($matches[2]+1); } echo mb_ereg_replace_callback( "(\d{2}/\d{2}/)(\d{4})", "next_year", $result); ?>
आउटपुट
April Fools day is 04/01/2020 Next match is 12/24/2022
उदाहरण 2
अनाम फ़ंक्शन का उपयोग करना
<?php // anonymous function is used $result = "April Fools day is 04/01/2019\n"; $result.= "Next match is 12/24/2021\n"; echo mb_ereg_replace_callback( "(\d{2}/\d{2}/)(\d{4})", function ($matches) { return $matches[1].($matches[2]+1); }, $result); ?>
आउटपुट
April Fools day is 04/01/2020 Next match is 12/24/2022
नोट - उदाहरण 2 में, अनाम फ़ंक्शन का उपयोग किया जाता है और कॉलबैक फ़ंक्शन हटा दिया जाता है, लेकिन आउटपुट अभी भी वही रहता है।