经测试代码如下:
/**
* 将多维数组转为一维数组
*
* @author 编程之家 jb51.cc jb51.cc
* @param array $arr
* @return array
*/
function ArrMd2Ud($arr) {
#将数值第一元素作为容器,作地址赋值。
$ar_room = &$arr[key($arr)];
#第一容器不是数组进去转呀
if (!is_array($ar_room)) {
#转为成数组
$ar_room = array($ar_room);
}
#指针下移
next($arr);
#遍历
while (list($k,$v) = each($arr)) {
#是数组就递归深挖,不是就转成数组
$v = is_array($v) ? call_user_func(__FUNCTION__,$v) : array($v);
#递归合并
$ar_room = array_merge_recursive($ar_room,$v);
#释放当前下标的数组元素
unset($arr[$k]);
}
return $ar_room;
}
/*** 代码来自编程之家 jb51.cc(jb51.cc) ***/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。