2009-02-11 18 views
19

क्या एक अंतर्निहित PHP फ़ंक्शन है जो एक स्ट्रिंग के अंदर एक स्ट्रिंग के अंदर एकाधिक मानों को प्रतिस्थापित करने के लिए है जो वास्तव में क्या निर्देशित करता है?PHP5 में एकाधिक/अलग-अलग मानों के साथ एकाधिक मानों को खोजें और बदलें?

उदाहरण के लिए:

$searchreplace_array = Array('blah' => 'bleh', 'blarh' => 'blerh'); 
$string = 'blah blarh bleh bleh blarh'; 

और जिसके परिणामस्वरूप होगा: 'bleh blerh bleh bleh blerh'।

+6

वह नमूना पाठ अनुवर्ती रूप से अनुसरण करने के लिए चाल है। –

+0

अच्छा सवाल: डी – ncomputers

उत्तर

62

आप str_replace() की तलाश में हैं।

$string = 'blah blarh bleh bleh blarh'; 
$result = str_replace(
    array('blah', 'blarh'), 
    array('bleh', 'blerh'), 
    $string 
); 

// अतिरिक्त टिप:

और अगर आप अपने उदाहरण की तरह एक साहचर्य सरणी के साथ फंस रहे हैं, तो आप इसे इस तरह विभाजित कर सकते हैं:

$searchReplaceArray = array(
    'blah' => 'bleh', 
    'blarh' => 'blerh' 
); 
$result = str_replace(
    array_keys($searchReplaceArray), 
    array_values($searchReplaceArray), 
    $string 
); 
1

str_replace() वह करता है।

अधिक विस्तृत स्पष्टीकरण के लिए आप manual देख सकते हैं।

0

तुम क्या के लिए वहां पहुंच गया है, बस उस सरणी को str_replace में खोज और प्रतिस्थापित करें (खोज पैरामीटर पर array_keys का उपयोग करके यदि आप सरणी को रखना चाहते हैं)।

16
$string = 'blah blarh bleh bleh blarh'; 
$trans = array("blah" => "blerh", "bleh" => "blerh"); 
$result = strtr($string,$trans); 

विस्तृत स्पष्टीकरण के लिए आप manual देख सकते हैं।

+0

धन्यवाद, यह मेरे लिए काम कर रहा है। – Hardik

+0

मैंने सरणी को बदलने और इसे बदलने के द्वारा सरणी प्रतिस्थापन के लिए उसी का उपयोग किया :) – Shan

+0

महान उत्तर, धन्यवाद! : डी – ncomputers

संबंधित मुद्दे