php分享一个n维数组转一维的函数
好玩,所以做了这么一个函数,来输出唐诗
函数如下
function changearr($arr){
if(count($arr)==count($arr,1)){
return $arr;
}
else{
foreach ($arr as $key=>$value){
if(is_array($value)){
foreach($value as $k=>$v){
$arr[] = $v;
}
unset($arr[$key]);
}
}
}
$arr = array_values($arr);
return changearr($arr);
}
测试数据如下
$a = array(
0=>'千',
1=>array(
0=>'里',
1=>'莺',
),
2=>array(
0=>array(
0=>'啼',
1=>'绿',
),
1=>array(
0=>'映',
1=>'红',
),
),
3=>array(
0=>array(
0=>array(
0=>'水',
1=>'村',
),
1=>array(
0=>'山',
1=>'郭',
),
),
1=>array(
0=>array(
0=>'酒',
1=>'旗',
),
1=>array(
0=>'风',
1=>'南',
),
),
),
4=>array(
0=>array(
0=>array(
0=>array('朝','四'),
1=>array('百','八'),
),
1=>array(
0=>array('十','寺'),
1=>array('多','少'),
),
),
1=>array(
0=>array(
0=>array('楼','台'),
1=>array('烟','雨'),
),
1=>array(
0=>array('中','唐'),
1=>array('杜','牧'),
),
),
),
);
调用如下
$return = changearr($a);
echo '<pre/>';
print_r($return);
$tangshi='';
foreach($return as $k=>$v){
$tangshi.=$v;
}
echo $tangshi;
输出如下
Array
(
[0] => 千
[1] => 里
[2] => 莺
[3] => 啼
[4] => 绿
[5] => 映
[6] => 红
[7] => 水
[8] => 村
[9] => 山
[10] => 郭
[11] => 酒
[12] => 旗
[13] => 风
[14] => 南
[15] => 朝
[16] => 四
[17] => 百
[18] => 八
[19] => 十
[20] => 寺
[21] => 多
[22] => 少
[23] => 楼
[24] => 台
[25] => 烟
[26] => 雨
[27] => 中
[28] => 唐
[29] => 杜
[30] => 牧
)
千里莺啼绿映红水村山郭酒旗风南朝四百八十寺多少楼台烟雨中唐杜牧
php分享一个n维数组转一维的函数的更多相关文章
- PHP如何判断一个数组是一维数组或者是二维数组?用什么函数?
如题:如何判断一个数组是一维数组或者是二维数组?用什么函数? 判断数量即可 <?php if (count($array) == count($array, 1)) { echo '是一维数组' ...
- [CareerCup] 13.10 Allocate a 2D Array 分配一个二维数组
13.10 Write a function in C called my2DAlloc which allocates a two-dimensional array. Minimize the n ...
- MVC5中使用jQuery Post 二维数组和一维数组到Action
很久没有写了,最近在做一个MVC项目,这是我做的第一个MVC项目.之前可以说多MVC一点都不了解,今天把昨天遇到的一个问题记录下来.MVC大神就请飘过吧,跟我遇到同样问题的可以进来看看.遇到的第一个问 ...
- ytu 1050:写一个函数,使给定的一个二维数组(3×3)转置,即行列互换(水题)
1050: 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 154 Solved: 112[ ...
- new一个二维数组
.定义一个二维数组 char **array1 array1 = new char *[x]; for(i=0;i<x;++i) array1[i] = new char[y]; ...用的时候 ...
- php多维数组化一维数组
一.使用foreach <?php function arr_foreach ($arr) { static $tmp=array(); if (!is_array ($arr)) { retu ...
- implode 多维数组转一维数组并字符串输出
//多维数组返回一维数组,拼接字符串输出 public function r_implode( $glue, $pieces ) { foreach( $pieces as $r_pieces ) { ...
- c语言题目:找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点
//题目:找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小.也可能没有鞍点. // #include "stdio.h" #include <stdli ...
- php中向前台js中传送一个二维数组
在php中向前台js中传送一个二维数组,并在前台js接收获取其中值的全过程方法: (1),方法说明:现在后台将数组发送到前台 echo json_encode($result); 然后再在js页面中的 ...
随机推荐
- sql中的分页实现
1.两种方式 1.1:row_number() over()函数 1.2:OFFSET ....FETCH OFFSET { integer_constant | offset_row_count_e ...
- C# 指针操作相关
C# 指针操作相关 ========================================= // ** 取int 地址 以指针访问指向值 ** // ...
- 阿里云1核1GIIS都装不上
没有启用虚拟内存启用之后就可以安装了 注意还要把自动更新服务关掉
- python3.3 unicode(encode&decode)
最近在用python写多语言的一个插件时,涉及到python3.x中的unicode和编码操作,本文就是针对编码问题研究的汇总,目前已开源至github.以下内容来自项目中的README. 1 ASC ...
- Mapped Statements collection does not contain value for 问题的解决
在做SSM项目的时候,遇到MyBatis抛出的一个异常: Mapped Statements collection does not contain value for org.lyk.vo.mapp ...
- js 判断一个元素是否在滚动的可视区域内,不在就固定到可视区域的上方。
前言:最近工作中,有这样一个场景,判断一个元素是否在滚动的可视区域内,不在就固定到可视区域的上方.为了以后再次遇到,所以记录下来,并分享.转载请注明出处:https://www.cnblogs.com ...
- C#设计模式--代理模式(学习Learning hard 设计模式笔记)
class Program { static void Main(string[] args) { //创建一个代理对象 并发出请求 Person proxy = new Friend(); prox ...
- LeetCode SQL:Employees Earning More Than Their Managers
# Write your MySQL query statement below SELECT a.Name FROM Employee AS a INNER JOIN Employee AS b O ...
- sql判断某个字段是否为空
判断sql某个字段是否为NULL public function dataNull($id){ $sql = 'SELECT * FROM `vvt_company_funcs_user` WHERE ...
- HTML标签参考(二)
一些重要的标签 • ol li <ol><li></li></ol>这是一组标签,它们二者都是成对出现的,每一个标签单独出现都是没有意义的事情. 这一 ...