PHP では、配列のコピーは非常に一般的な操作の 1 つです。通常、この操作を完了するにはいくつかの組み込み関数を使用できます。この記事では、PHP を使用して配列をコピーする方法を紹介します。
方法 1: 代入演算子を使用する
代入演算子「=」を使用して、ある配列の値を別の配列に代入します。元の配列の別のコピーを作成したい場合は、次のコードを使用できます:
$originalArray = array("apple", "banana", "cherry"); $newArray = $originalArray;
上記のコードでは、$newArray 変数には $originalArray のすべての値が含まれます。この操作は、$originalArray の参照のコピーを $newArray に渡すことによって行われます。これは、$originalArray の値を変更すると、それに応じて $newArray の対応する値も変更されることを意味します。これは、両方が同じメモリ アドレスを参照しているためです。完全に独立したコピーが必要な場合は、方法 2 を使用できます。
方法 2: array_slice 関数を使用する
方法 2 では、array_slice 関数を使用して配列のサブセットを取得し、新しい配列を生成します。これは次の方法で実現できます。
$originalArray = array("apple", "banana", "cherry"); $newArray = array_slice($originalArray, 0);
このコードでは、array_slice 関数の 2 番目のパラメーターが開始インデックスです。ここでは 0 を渡して配列全体をインターセプトします。 3 番目のパラメータはインターセプトの長さです。ここでは設定していません。デフォルト値は配列の長さです。
上記のコードは完全に独立した新しい配列を作成します。$originalArray が変更されても、$newArray は影響を受けません。
方法 3: json_encode 関数と json_decode 関数を使用する
方法 3 では、元の配列を JSON 文字列にエンコードしてからデコードすることで、新しい配列を作成します。このコードでは、json_encode 関数を使用して $originalArray を JSON 文字列に変換し、次に json_decode 関数を使用してそれを新しい配列にデコードします。
デコード プロセスは参照によって行われないため、このメソッドは新しい配列を作成できます。これは、元の配列内の値がオブジェクトまたは配列の場合、それもコピーされることも意味します。
要約すると、上記は PHP で配列をコピーする 3 つの一般的な方法ですが、特定のニーズに応じて異なる方法を使用できます。代入演算子と array_slice 関数は両方とも新しい配列を作成し、json_encode 関数と json_decode 関数はオブジェクトと配列をコピーします。
以上がPHPで配列をコピーする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。