ホームページ > バックエンド開発 > PHPチュートリアル > PHP のグループ化された配列における主要な反復テクニック

PHP のグループ化された配列における主要な反復テクニック

王林
リリース: 2024-05-03 11:39:02
オリジナル
402 人が閲覧しました

PHP では、グループ化された配列のキーと値のペアを反復するときに、次の手法を使用できます。foreach ループはキーと値のペアを直接取得し、array_keys() 関数はすべてのキー名を取得します。関数は正規表現を使用してキー値を正しく分割します。これらのメソッドを使用すると、グループ化された配列内のキー値を操作し、ユーザーの名前や年齢などの特定の情報を取得することが簡単になります。

PHP 分组数组中的键迭代技巧

PHP のグループ化された配列における反復の重要なヒント

PHP でグループ化された配列を扱う場合 (JavaScript のオブジェクトと同様)、キー値の反復処理は複雑になる場合があります。次のヒントは、このプロセスを簡素化するのに役立ちます:

1. foreach ループ

$groupedArray = [
    'group1' => ['item1', 'item2'],
    'group2' => ['item3', 'item4'],
];

foreach ($groupedArray as $key => $value) {
    echo "Key: $key, Value: " . implode(', ', $value) . "\n";
}
ログイン後にコピー

これは、array_keys を出力します。 ( )

array_keys()

この関数は、配列内のすべてのキー名の配列を返します。

Key: group1, Value: item1, item2
Key: group2, Value: item3, item4
ログイン後にコピー
これは、前のメソッドと同じ結果を生成します。 。

3. preg_split()

preg_split()

関数としても知られる正規表現を使用して、キーの名前と値を分割します。
$keys = array_keys($groupedArray);

foreach ($keys as $key) {
    echo "Key: $key, Value: " . implode(', ', $groupedArray[$key]) . "\n";
}
ログイン後にコピー

これは、"group1: item1, item2" のようなキーと値のペアをキャプチャし、それらを

$key

$value 変数に分割します。 実用的なケース

ユーザーの詳細が含まれる次のグループ化された配列があるとします:

$pattern = "/: /";
foreach ($groupedArray as $keyValuePair) {
    list($key, $value) = preg_split($pattern, $keyValuePair);
}
ログイン後にコピー

すべてのユーザー名を取得します:

$users = [
    'user1' => ['name' => 'John', 'age' => 30],
    'user2' => ['name' => 'Jane', 'age' => 25],
];
ログイン後にコピー

これは出力します:

foreach ($users as $key => $value) {
    echo $value['name'] . "\n";
}
ログイン後にコピー

27 歳より古いすべてのユーザーのキーを取得します:

John
Jane
ログイン後にコピー

これは出力します:

foreach ($users as $key => $value) {
    if ($value['age'] > 27) {
        echo "User " . $key . "\n";
    }
}
ログイン後にコピー

以上がPHP のグループ化された配列における主要な反復テクニックの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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