ホームページ > バックエンド開発 > PHPチュートリアル > PHP で多次元配列をフラット化するにはどうすればよいですか?

PHP で多次元配列をフラット化するにはどうすればよいですか?

Linda Hamilton
リリース: 2025-01-05 09:31:39
オリジナル
257 人が閲覧しました

How Can I Flatten Multidimensional Arrays in PHP?

PHP 多次元配列の平坦化

多次元配列を 1 次元に平坦化することは、一部のデータ処理タスクでは不可欠な場合があります。 PHP では、配列操作関数を使用してこの変換を実行する便利な方法が提供されています。

array_merge を使用した解決策

$array = [
    [1, 2, 3],
    [4, 5, 6],
];

$result = call_user_func_array('array_merge', $array);

echo "<pre class="brush:php;toolbar:false">";
print_r($result); // Output: [1, 2, 3, 4, 5, 6]
ログイン後にコピー

call_user_func_array() 関数を使用すると、引数の配列を関数に渡すことができます。この場合、これを使用して、多次元配列の各要素を引数として array_merge() 関数を呼び出します。

再帰関数を使用した解決策

function array_flatten($array) {
    $return = [];
    foreach ($array as $key => $value) {
        if (is_array($value)) {
            $return = array_merge($return, array_flatten($value));
        } else {
            $return[$key] = $value;
        }
    }
    return $return;
}

$array = [
    [1, 2, 3],
    [4, 5, 6],
];

$result = array_flatten($array);

echo "<pre class="brush:php;toolbar:false">";
print_r($result); // Output: [1, 2, 3, 4, 5, 6]
ログイン後にコピー

この再帰関数は、反復処理によって機能します。配列を介して、見つかった配列要素に対してそれ自体を再帰的に呼び出します。各再帰呼び出しの結果を最終的なフラット化された配列にマージします。

以上がPHP で多次元配列をフラット化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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