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

PHP で再帰や参照を使用せずに多次元配列をフラット化するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-29 02:57:14
オリジナル
181 人が閲覧しました

How Can I Flatten a Multidimensional Array in PHP Without Recursion or References?

PHP での多次元配列のフラット化

PHP で多次元配列をフラット化するには、多次元配列を 1 次元配列に変換します。これは再帰や参照を使用せずに実行できるため、より効率的で読みやすいコードが可能になります。

1 つのアプローチは、配列を再帰的に反復し、指定されたコールバック関数を各要素に適用する array_walk_recursive() 関数を利用することです。 。 PHP 5.3 で導入された新しいクロージャ構文を使用すると、簡潔で効果的なソリューションを実現できます。

このメソッドを使用して多次元配列をフラット化する方法を示すコード スニペットを次に示します。

function flatten(array $array) {
    $return = array();
    array_walk_recursive($array, function($a) use (&$return) { $return[] = $a; });
    return $return;
}
ログイン後にコピー

この関数は、ネストされた要素を含む配列全体を再帰的に走査します。検出された要素ごとに、それを $return 配列に追加し、構造を効果的にフラット化します。

キーの関連付けを維持する必要がある場合は、2 番目の引数を true に設定して array_walk_recursive() を使用できることに注意してください。コールバック関数のシグネチャ内。

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

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