ホームページ  >  記事  >  バックエンド開発  >  PHP で str_replace を使用して多次元配列を置換する方法の詳細な説明

PHP で str_replace を使用して多次元配列を置換する方法の詳細な説明

墨辰丷
墨辰丷オリジナル
2018-05-21 14:38:011508ブラウズ

この記事では、str_replace を使用して多次元配列を置換する PHP の実装方法を主に紹介し、具体的な例を組み合わせて、多次元配列の走査と置換操作に関する PHP の実装スキルと注意事項を比較および分析します。

PHP では、str_replace を使用して配列内の文字列を置換する場合、1 次元配列のみを置換できます。それが多次元配列の場合、すべての文字列を置換することはできません。そこで、多次元配列の文字列の置換を実現するメソッドを書きました

まず、str_replaceを直接使用して配列の置換をテストしてみましょう

$a = array(
'a' => 'bdc#',
'ceshi' => array('c'=>array('f'=>'#'))
);
$a = str_replace('#', 'ccc', $a);
var_dump($a);

出力は次のとおりであることがわかりました。

一次元配列の文字列のみを置換し、それ以上の次元の配列は置換されないことがわかりました。

この関数は多次元配列の文字列置換を実装しています

array (size=2)
 'a' => string 'bdcccc' (length=6)
 'ceshi' =>
  array (size=1)
   'c' =>
    array (size=1)
     'f' => string '#' (length=1)

出力は次のとおりです:

$a = array(
'a' => 'bdc#',
'ceshi' => array('c'=>array('f'=>'#'))
);
function strReplace(&$array) {
 $array = str_replace('#', 'ccc', $array);
if (is_array($array)) {
  foreach ($array as $key => $val) {
    if (is_array($val)) {
      strReplace($array[$key]);
    }
  }
}
}
strReplace($a);
var_dump($a);

多次元配列の文字列置換が実装されていることがわかります

関数strReplace は、再帰によって配列のアドレスを渡して文字列を置換します。もちろん、これは非常に簡単な方法であり、これと同じように実装する方法はたくさんあります。

関連する推奨事項:

javascript

replace

() 2番目のパラメータが関数である場合のパラメータの使用法(誰でも詳しく説明)
str_

replace

関数の定義と使用法のまとめ
pushState と

replace

State の使用手順の詳細な説明 PHP がテキスト ファイルを読み取る 4 つの一般的な方法と str_replace

replace 関数の詳細な説明使い方


以上がPHP で str_replace を使用して多次元配列を置換する方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。