Preg_replace_callback_array() फ़ंक्शन एक नियमित अभिव्यक्ति का प्रतिनिधित्व करता है और कॉलबैक के उपयोग को प्रतिस्थापित करता है। यह फ़ंक्शन रेगुलर एक्सप्रेशन के सेट से मेल खाने के लिए एक स्ट्रिंग या स्ट्रिंग की एक सरणी देता है और कॉलबैक फ़ंक्शन का उपयोग करके उन्हें बदल देता है।
सिंटैक्स
preg_replace_callback_array(patterns, input, limit, count)
पैरामीटर मान:
- पैटर्न - इसे नियमित अभिव्यक्ति पैटर्न को कॉलबैक फ़ंक्शंस से जोड़ने के लिए एक सहयोगी सरणी की आवश्यकता होती है।
- इनपुट/विषय - इसे बदलने के लिए स्ट्रिंग्स की एक सरणी की आवश्यकता होती है।
- सीमा − यह वैकल्पिक है। -1 डिफ़ॉल्ट के लिए प्रयोग किया जाता है, जिसका अर्थ है कि यह असीमित है। यह एक सीमा निर्धारित करता है कि प्रत्येक स्ट्रिंग में कितने प्रतिस्थापन किए जा सकते हैं।
- गिनती - यह भी लिमिट की तरह ऐच्छिक है। इस वेरिएबल में एक संख्या होगी, जो दर्शाती है कि फ़ंक्शन के निष्पादित होने के बाद कितने प्रतिस्थापन किए गए थे।
- झंडे − यह preg_offset_captureandpreg_unmatched_as_null फ़्लैग का संयोजन हो सकता है, जो मिलान किए गए सरणी के प्रारूप को प्रभावित करता है।
- वापसी मूल्य - preg_replace_callback_array() एक स्ट्रिंग या स्ट्रिंग की एक सरणी देता है। यदि कोई त्रुटि पाई जाती है, तो यह एक शून्य मान लौटाएगा। यदि मिलान पाए जाते हैं, तो नया विषय वापस कर दिया जाएगा, अन्यथा, विषय अपरिवर्तित लौटा दिया जाएगा।
Preg_replace_callback_array() :उदाहरण
<html> <head> <title> PHP 7 Featuretutorialpoint:</title> </head> <body> <?php $subject = 'AaaaaaaBbbbCccc'; preg_replace_callback_array ( [ '~[a]+~i' => function ($match) { echo strlen($match[0]), ' number of "a" found', PHP_EOL; }, '~[b]+~i' => function ($match) { echo strlen($match[0]), ' number of "b" found', PHP_EOL; }, '~[c]+~i' => function ($match) { echo strlen($match[0]), ' number of "c" found', PHP_EOL; } ], $subject ); ?> </body> </html>
आउटपुट
उपरोक्त प्रोग्राम कोड का आउटपुट है -
7 number of "a" found 4 number of "b" found 5 number of "c" found