ホームページ > バックエンド開発 > PHPの問題 > PHPで2次元配列を1次元配列に変換する方法

PHPで2次元配列を1次元配列に変換する方法

PHPz
リリース: 2023-04-20 11:21:41
オリジナル
1611 人が閲覧しました

PHP は、配列を処理するための強力な機能を備えた非常に人気のあるプログラミング言語です。 PHP では、2 次元配列は非常に一般的なデータ型であり、複数の 1 次元配列で構成されます。 2 次元配列を 1 次元配列に変換する必要がある場合、いくつかの特定の関数とテクニックを使用する必要があります。以下に、よく使われるいくつかの方法を紹介します。

方法 1: foreach ループを使用する

最初の方法は、foreach ループを使用して 2 次元配列を走査し、各要素を新しい 1 次元配列に追加することです。以下はサンプル コードです:

$two_dim_array = array(
  array('apple', 'banana', 'cherry'),
  array('dog', 'cat', 'rat'),
  array('red', 'green', 'blue')
);

$one_dim_array = array();
foreach ($two_dim_array as $key => $value) {
  foreach ($value as $k => $v) {
    array_push($one_dim_array, $v);
  }
}
print_r($one_dim_array);
ログイン後にコピー

出力結果:

Array
(
    [0] => apple
    [1] => banana
    [2] => cherry
    [3] => dog
    [4] => cat
    [5] => rat
    [6] => red
    [7] => green
    [8] => blue
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

方法 2: array_merge() 関数を使用します

2 番目の方法は、array_merge() 関数を使用することです。複数の次元グループを結合して新しい 1 次元配列を作成します。 2 次元配列をループし、array_merge() 関数を使用して各 1 次元配列をマージすることで、新しい 1 次元配列を取得できます。以下はサンプル コードです:

$two_dim_array = array(
  array('apple', 'banana', 'cherry'),
  array('dog', 'cat', 'rat'),
  array('red', 'green', 'blue')
);

$one_dim_array = array();
foreach ($two_dim_array as $key => $value) {
  $one_dim_array = array_merge($one_dim_array, $value);
}
print_r($one_dim_array);
ログイン後にコピー

出力結果:

Array
(
    [0] => apple
    [1] => banana
    [2] => cherry
    [3] => dog
    [4] => cat
    [5] => rat
    [6] => red
    [7] => green
    [8] => blue
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

方法 3: array_reduce() 関数を使用します

3 番目の方法は、array_reduce() 関数を使用することです。 2 次元配列を 1 次元配列に変換します。 array_reduce() 関数は配列とコールバック関数をパラメータとして受け取り、コールバック関数は配列内の値を 1 つずつ繰り返し計算し、最終的に 1 つの値を返します。空の配列を初期値として使用し、コールバック関数で各 1 次元配列を新しい 1 次元配列にマージできます。以下はサンプルコードです:

$two_dim_array = array(
  array('apple', 'banana', 'cherry'),
  array('dog', 'cat', 'rat'),
  array('red', 'green', 'blue')
);

$one_dim_array = array_reduce($two_dim_array, function($carry, $item) {
  return array_merge($carry, $item);
}, array());
print_r($one_dim_array);
ログイン後にコピー

出力結果:

Array
(
    [0] => apple
    [1] => banana
    [2] => cherry
    [3] => dog
    [4] => cat
    [5] => rat
    [6] => red
    [7] => green
    [8] => blue
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

まとめ

上記は、2 次元配列を 1 次元配列に変換するための PHP の 3 つの一般的なメソッドです。 -次元配列。 foreach ループと array_merge() 関数の使用には両方とも配列を走査する必要がありますが、array_reduce() 関数の使用はより簡潔ですが、一部の開発者を混乱させる可能性があります。そのため、実際の開発においては、ニーズに応じて最適な方法を選択することができ、開発効率を向上させることができます。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート