Maison  >  Article  >  développement back-end  >  Comment récupérer les valeurs clés des tableaux dans les boucles PHP Foreach ?

Comment récupérer les valeurs clés des tableaux dans les boucles PHP Foreach ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-17 17:23:30360parcourir

How to Retrieve Key Values from Arrays in PHP Foreach Loops?

Getting Key Values from Arrays in PHP Foreach Loops

In PHP, retrieving the key or index of an array element while iterating through it in a foreach loop can be achieved using the correct function.

Understanding the Issue

In the provided example, the goal is to print an HTML table with the key of each array element (4722, 4922, 7522) and its corresponding values. However, using key($item) within the loop returned only the key of the first nested array (value1), resulting in incorrect output.

Solution: Using Key Assignment

To correctly retrieve the array key, use key assignment within the foreach loop syntax:

foreach($samplearr as $key => $item){
  // ... code to access key and values ...
}

By assigning the key to a variable ($key in this case), it becomes accessible and can be used within the loop.

Modified Loop:

Using key assignment, the corrected loop would be:

foreach($samplearr as $key => $item){
  print "<tr><td>" 
      . $key 
      . "</td><td>"  
      . $item['value1'] 
      . "</td><td>" 
      . $item['value2'] 
      . "</td></tr>";
}

This will correctly print the HTML table as desired:

<code class="html">&lt;tr&gt;&lt;td&gt;4722&lt;/td&gt;&lt;td&gt;52&lt;/td&gt;&lt;td&gt;46&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;4922&lt;/td&gt;&lt;td&gt;22&lt;/td&gt;&lt;td&gt;47&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;7522&lt;/td&gt;&lt;td&gt;47&lt;/td&gt;&lt;td&gt;85&lt;/td&gt;&lt;/tr&gt;</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn