我有一个包含关联数组的索引数组。喜欢这个
$arr = array(
array("id" => 1,"name" => "student1"),
array("id" => 2,"name" => "student2"),
array("id" => 3,"name" => "student3"),
);
现在我想要这样的输出
1,2,3 // output
我有解决方案,但我正在寻找更好的方法来做到这一点。这是
$ids = "";
for($i=0;$i<count($arr);$i++)
{
$ids .= $arr[$i]['id'].",";
}
$ids = rtrim($ids,",");
echo $ids; // output : 1,2,3
有没有更好的方法来实现它?
提前致谢
答案 0 :(得分:3)
如果您有php版本&gt; = 5.5则尝试
echo implode(",",array_column($arr,'id'));
答案 1 :(得分:3)
如果您没有PHP 5.5 +,请使用array_map()
替代:
echo implode(',', array_map(function($v) { return $v['id']; }, $arr));
答案 2 :(得分:0)
试试这段代码
<?php
$arr = array(
array("id" => 1,"name" => "student1"),
array("id" => 2,"name" => "student2"),
array("id" => 3,"name" => "student3"),
);
$str = "";
foreach ($arr as $value)
{
$str=$str.$value["id"].",";
}
$str = substr($str, 0, -1);
echo $str;
?>
答案 3 :(得分:0)
foreach ($arr as $val){
$ids[]=$val['id'];
}
echo implode(($ids),',');