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 サイトの他の関連記事を参照してください。