恥辱問,但我不知道如何echout所有數組的鍵在此的foreach循環:週期中的所有磁盤陣列的鍵
$i=0;
foreach ($matches as $match) {
echo $match[$i++];
}
現在結果只是「1」。取而代之的1 2 3 7
Array
(
[0] => Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 7
)
)
恥辱問,但我不知道如何echout所有數組的鍵在此的foreach循環:週期中的所有磁盤陣列的鍵
$i=0;
foreach ($matches as $match) {
echo $match[$i++];
}
現在結果只是「1」。取而代之的1 2 3 7
Array
(
[0] => Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 7
)
)
如果$匹配始終是一個單一的元素,你可以走了一條捷徑,並使用一個數組:
foreach ($matches[0] as $match) {
echo $match.' ';
}
Othewise使用嵌套foreach循環
foreach($matches as $match) {
foreach($match as $element) {
echo $element.' ';
}
}
那是因爲你的代碼是基本呼應的第一陣列的第一項,第二的第二等,但因爲你只有一個數組中的「主力」之一,它輸出那個單獨的1
。雖然這對證明有無限多的實數很有用,但這不是你想要的!
試試這個:
foreach($matches as $match) {
echo implode(" ",$match);
}
你只想陣列鑰匙?使用
array_keys()
你想循環播放鍵?使用
foreach($array AS $key=>$value){
echo $key.' ';
}
你想回顯值嗎?使用:
foreach($array AS $key=>$value){
echo $value.' ';
}
否則,您需要解釋您實際嘗試做什麼。
您可以使用array_walk_recursive做到這一點。
$array = array(
array(
0 => 1,
1 => 2,
2 => 3,
3 => 7
)
);
function print_out($item, $key) {
echo "$key = $item\n";
}
array_walk_recursive($array, 'print_out');
輸出:
0 = 1
1 = 2
2 = 3
3 = 7