32

文字列内の複数の値を、何が何に置き換えられるかを正確に指示する配列に置き換える組み込みのPHP関数はありますか?

例えば:

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

そして、結果は次のようになります:'bleh blerh blehblehblerh'。

4

5 に答える 5

89

あなたが探している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
); 
于 2009-02-11T02:01:34.267 に答える
23
$string = 'blah blarh bleh bleh blarh';
$trans = array("blah" => "blerh", "bleh" => "blerh");
$result = strtr($string,$trans);

詳細な説明については、マニュアルを確認してください。

于 2012-05-21T09:13:09.600 に答える
1

str_replace()それをします。

詳細な説明については、マニュアルを確認してください。

于 2009-02-11T02:00:47.733 に答える
0

str_replaceそこにあるものについては、その配列を検索と置換の両方として渡すだけです(配列をarray_keysそのままにしておきたい場合は、検索パラメーターを使用します)。

于 2009-02-11T02:02:31.520 に答える