入れ子になった配列の PHP Foreach ループで配列キーを取得するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-10-17 17:22:02
オリジナル
620 人が閲覧しました

How to Retrieve Array Keys in a PHP Foreach Loop for Nested Arrays?

PHP: Foreach ループで配列キーを取得する

PHP では、foreach ループを使用して連想配列を反復処理すると、両方の値にアクセスできます。そして鍵。ただし、key() 関数は現在の値のキーのみを返すため、ネストされた配列を操作する場合には不十分な可能性があります。

たとえば、次のような配列を考えてみましょう。

<code class="php"><?php
$samplearr = array(
    4722 => array('value1' => 52, 'value2' => 46),
    4922 => array('value1' => 22, 'value2' => 47),
    7522 => array('value1' => 47, 'value2' => 85)
);
?></code>
ログイン後にコピー

foreach ループで key($item) を使用して親キーを取得しようとすると、予期しない結果が発生する可能性があります:

<code class="php"><?php
foreach ($samplearr as $item) {
    echo "<tr><td>" . key($item) . "</td>";
    echo "<td>" . $samplearr['value1'] . "</td>";
    echo "<td>" . $samplearr['value2'] . "</td></tr>";
}
?></code>
ログイン後にコピー

このコードは、値キー (value1 と value2) のみを返します。

親キーにアクセスするには、foreach ループで次のアプローチを使用できます。

<code class="php"><?php
foreach ($samplearr as $key => $item) {
    echo "<tr><td>" . $key . "</td>";
    echo "<td>" . $item['value1'] . "</td>";
    echo "<td>" . $item['value2'] . "</td></tr>";
}
?></code>
ログイン後にコピー

$key を使用すると、ループが親キーを反復処理し、親キーとキーの両方にアクセスして出力できるようになります。子の値は必要に応じて変更します。

以上が入れ子になった配列の PHP Foreach ループで配列キーを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!