Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:从foreach循环中的数组中获取密钥_Php_Arrays_Foreach - Fatal编程技术网

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

PHP:从foreach循环中的数组中获取密钥,php,arrays,foreach,Php,Arrays,Foreach,print\u r($samplearr)为包含3项的数组打印以下内容: Array ( [4722] => Array ( [value1] => 52 [value2] => 46 ) Array ( [4922] => Array ( [value1] => 22 [value2] => 47 ) Array ( [7522] => Array ( [value1] => 47 [value2] => 85 ) 我想把它们放到一个HT

print\u r($samplearr)为包含3项的数组打印以下内容:

Array ( [4722] => Array ( [value1] => 52 [value2] => 46 )
Array ( [4922] => Array ( [value1] => 22 [value2] => 47 )
Array ( [7522] => Array ( [value1] => 47 [value2] => 85 )
我想把它们放到一个HTML表中,所以我做了一个foreach,但它没有达到我的预期:

foreach($samplearr as $item){
     print "<tr><td>" . key($item) . "</td><td>" . $samplearr['value1'] . "</td><td>" . $samplearr['value2'] . "</td></tr>";
}
foreach($samplearr作为$item){
打印“.key($item)。.$samplearr['value1']”..$samplearr['value2']”;
}
它正在返回:

<tr><td>value1</td><td>52</td><td>46</td></tr>
value15246
这将是我想要的第一个输出:

<tr><td>4722</td><td>52</td><td>46</td></tr>
47225246
我需要使用什么函数来代替键($item)来获取4722?

尝试以下操作:

foreach($samplearr as $key => $item){
  print "<tr><td>" 
      . $key 
      . "</td><td>"  
      . $item['value1'] 
      . "</td><td>" 
      . $item['value2'] 
      . "</td></tr>";
}
foreach($samplearr as$key=>$item){
打印“”
.$key
. ""  
.$item['value1']
. "" 
.$item['value2']
. "";
}
与键和值一起使用

例如:

foreach($samplearr as $key => $val) {
     print "<tr><td>" 
         . $key 
         . "</td><td>" 
         . $val['value1'] 
         . "</td><td>" 
         . $val['value2'] 
         . "</td></tr>";
}
foreach($samplearr作为$key=>$val){
打印“”
.$key
. "" 
.$val['value1']
. "" 
.$val['value2']
. "";
}

您需要嵌套的foreach循环

foreach($samplearr as $key => $item){
   echo $key;
    foreach($item as $detail){
       echo $detail['value1'] . " " . $detail['value2']
     }
 }

如果您不想购买$D物品。您可以使用
foreach(array_keys($arr)as$key){}
…或者您可以只存储引用
和$item
,而不复制变量,有时检索array_keys的性能要比按原样进行差:-请参见