use*_*046 0 php arrays foreach multidimensional-array
我有一个以下形式的多维PHP数组:
Array
(
[0] => Array
(
[id] => 45
[date] => 2013-05-16
)
[1] => Array
(
[id] => 30
[date] => 2013-12-10
)
[2] => Array
(
[id] => 26
[date] => 2014-03-27
)
[3] => Array
(
[id] => 34
[date] => 2014-03-27
)
)
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用以下PHP代码生成[逗号]值列表,以逗号分隔:
foreach ($my_array as $key => $value) {
if ($key == 0) {
$id_list = $value[id];
}
if ($key !== 0 ) {
$id_list .= "," . $value[id];
}
}
Run Code Online (Sandbox Code Playgroud)
我希望这会回来
45,30,26,34
Run Code Online (Sandbox Code Playgroud)
......但由于某种原因它会回来
45,30,26,26
Run Code Online (Sandbox Code Playgroud)
即倒数第二个ID重复,最终ID丢失.我一直在盯着这一段时间,但我看不出我哪里出错了.我错过了一些明显的事吗?
更好的解决方案是根本不使用它们if():
$ids = array();
foreach($arr as $val) {
$ids[] = $val['id'];
}
$id_str = implode(',', $ids);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
40 次 |
| 最近记录: |