PHP:从foreach循环中的数组中获取密钥

Sys*_*X17 28 php arrays foreach

print_r($ samplearr)为包含3个项目的数组打印以下内容:

Array ( [4722] => Array ( [value1] => 52 [value2] => 46 )
Array ( [4922] => Array ( [value1] => 22 [value2] => 47 )
Array ( [7522] => Array ( [value1] => 47 [value2] => 85 )
Run Code Online (Sandbox Code Playgroud)

我想把这些放到一个HTML表中,所以我正在做一个foreach,但它没有做我所期望的:

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

哪个回来了:

<tr><td>value1</td><td>52</td><td>46</td></tr>
Run Code Online (Sandbox Code Playgroud)

这将是我想要的第一个输出:

<tr><td>4722</td><td>52</td><td>46</td></tr>
Run Code Online (Sandbox Code Playgroud)

我需要使用什么功能代替键($ item)才能获得4722?

flo*_*ree 75

试试这个:

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

  • 如果你没有nedd $ item.你可以把我们`foreach(array_keys($ arr)作为$ key){}` (6认同)