PHP Foreach ループで配列キーを正しく取得する方法

Linda Hamilton
リリース: 2024-10-17 17:19:02
オリジナル
604 人が閲覧しました

How to Correctly Retrieve Array Keys in PHP Foreach Loop

Retrieving Array Keys in a Foreach Loop: Addressing an Error in Key Retrieval

In PHP, iterating over an array's values using a foreach loop can sometimes lead to unexpected behavior when accessing the keys. This is especially true if the array contains nested data structures.

Understanding the Error

Consider the following code:

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

As illustrated in the provided question, this code will only output the key of the nested array (e.g., "value1"), not the desired key of the outer array itself (e.g., "4722").

Correcting the Issue

To retrieve the outer array key correctly, we need to modify the code slightly:

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

By adding a $key variable to the foreach loop, we can access the actual key of the outer array. This will then correctly print the desired key in the table.

以上がPHP Foreach ループで配列キーを正しく取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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