ホームページ  >  記事  >  バックエンド開発  >  PHPのarray_replace、array_splice、str_replace関数の比較

PHPのarray_replace、array_splice、str_replace関数の比較

王林
王林転載
2020-01-31 20:45:012690ブラウズ

PHPのarray_replace、array_splice、str_replace関数の比較

PHP には、array_replace、array_splice、str_replace など、似たような関数または似た名前を持つ関数がいくつかあることがわかっています。名前から判断すると、最初の 2 つは配列を操作し、後者は文字列を操作するものです。

詳細は次のとおりです。

array_replace 関数

<?php
$arr1 = [&#39;a&#39; => 1, &#39;b&#39; => 2, &#39;c&#39; => 3];
$arr2 = [&#39;b&#39; => 4, &#39;c&#39; => 5, 3];
$arr3 = [1, 2, 3];
$arr4 = array_replace($arr1, $arr2, $arr3);
print_r($arr4);
//Array
//(
//    [a] => 1
//    [b] => 4
//    [c] => 5
//    [0] => 1
//    [1] => 2
//    [2] => 3
//)

この例では、$arr3 と $arr2 には同じキーを持つ要素があるため、 $arr3 $arr2 が別の加算値に置き換えられ、一時配列が取得されます。一時配列 ['b' => 4, 'c' => 5, 1,2,3] には、次と同じキーを持つ要素が含まれます。 $arr1 なので、この配列は $arr1 を置き換え、異なるキーを持つ要素を $arr1 に追加し、最後に結果の配列を返します。

(無料の学習ビデオ チュートリアルの推奨: php ビデオ チュートリアル)

<?php
$arr1 = [1, 2, 3];
$arr2 = [1, 2, 3];
$arr3 = [1, 2, 3];
$arr4 = array_replace($arr1, $arr2, $arr3);
print_r($arr4);
//Array
////(
////    [0] => 1
////    [1] => 2
////    [2] => 3
////)

この例では、$arr3 は $arr2 内の同じ要素を置き換え、その結果の一時配列を置き換えます。 replaces $ arr1 内の同じキーを持つ要素が置き換えられます。

array_splice 関数

<?php
$arr1 = [1, 2, 3];
$arr2 = [1, 2, 3];

$arr3 = array_splice($arr1, 1, 2, $arr2);
print_r($arr3);
print_r($arr1);
//Array
//(
//    [0] => 2
//    [1] => 3
//)
//Array
//(
//    [0] => 1
//    [1] => 1
//    [2] => 2
//    [3] => 3
//)

この関数は、$arr1、インデックス 1、インデックス 2、位置で要素を切り取り、残りの $arr1 に $arr2 を追加します。要素の場合、この関数は元の配列に影響します $arr1

str_replace function

<?php
$str1 = &#39;abcde&#39;;
$str2 = &#39;ddddddddddd&#39;;

$str3 = str_replace(&#39;c&#39;,$str2,$str1);
print_r($str1."\n");
print_r($str3);
//abcde
//abdddddddddddde

は、$str1 内の文字 c の位置を見つけて、$str2 に置き換えます。文字列には影響しません。

3 つの関数、array_replace と stt_replace は、関数名がよく似ていますが、その機能は混同されやすいです。

おすすめの関連記事とチュートリアル: php チュートリアル

以上がPHPのarray_replace、array_splice、str_replace関数の比較の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。