php中的数组内爆
我有一个以下格式的数组:php中的数组内爆,php,arrays,implode,Php,Arrays,Implode,我有一个以下格式的数组: $var = Array ( [0] => Array ( [name] => Harry ) [1] => Array ( [name] => Wayne ) ) Array ( [0] => Array ( [name] =&
$var = Array
(
[0] => Array
(
[name] => Harry
)
[1] => Array
(
[name] => Wayne
)
)
Array
(
[0] => Array
(
[name] => Wayne
)
我想将此数组内爆,以使其符合以下格式:
Harry,Wayne
Wayne
根据我的尝试,我得到了以下格式:
Harry,Wayne
Harry,Wayne,Wayne
我尝试过的(不重要,因为它是错误的)
$var是使用fetch_数组从数据库中获取的
$this->db->select('name');
$this->db->where('id', $Id);
$this->db->from('info');
$row = $this->db->get();
$var = $row->result_array();
其中$Id是包含特定用户Id的数组。试试这个
foreach($var as $a){
$m = '';
$delim = '';
foreach($a as $k){
$m .= $delim . $k['name'];
$delim = ',';
}
$c[] = $m;
}
foreach($c as $d){
echo $d;
}
请忽略那些硬编码的循环。它有一个递归函数
array_walk_recursive($var, create_function('$val, $key', 'array_push($obj, $val);'), &$output);
echo implode(",",$output);
看起来两个都是不同的数组。第二个数组块呢?这是一个不同的数组,对吗?还是什么?@praveen:请检查一下edit@Venu,拥有自己的算法总比使用内置函数要好。这不仅会提高你的技能,还会提高你寻找解决方案的技能
foreach($var as $a)
{
unset($temp);
foreach($a as $b)
{
$temp[] = $b['name'];
}
$c[] = implode(",", $temp);
}
// output all the names
foreach ($c as $csvNames)
{
echo $csvNames;
}
array_walk_recursive($var, create_function('$val, $key', 'array_push($obj, $val);'), &$output);
echo implode(",",$output);