PHP递归打印数组中所有元素

原创 2012年03月26日 11:10:35

函数定义: 

//@patten:为打印前的字符串,不同的层次会增加该串打印的次数 
//@array:为要打印的数组 
function print_array($patten, $array){ 
  $retstr; 
  foreach($array as $value){ 
    if( is_array($value) ){ 
      $patten = $patten.$patten; 
      print_array($patten, $value); 
    } else { 
      echo "<p>".$patten."[".key($array)."]".": ".$value." <br/> ". "</p>"; 
    } 
  next($array); 
  } 
} 

调用方法:

print_array("-", $array); 

输出,打印sina微博:


-[created_at]: Sun Mar 25 16:35:50 +0800 2012
-[id]: 3427505904478654
-[mid]: 3427505904478654
-[idstr]: 3427505904478654
-[text]: 转发。
-[source]: iPhone客户端
-[favorited]:
-[truncated]:
-[in_reply_to_status_id]:
-[in_reply_to_user_id]:
-[in_reply_to_screen_name]:
-[geo]:
-[user]:
--[id]: 1721825977
--[idstr]: 1721825977
--[screen_name]: 许小年
--[name]: 许小年
--[province]: 11
--[city]: 1000
--[location]: 北京
--[description]:
--[url]: http://blog.sina.com.cn/xuxiaonian
--[profile_image_url]: http://tp2.sinaimg.cn/1721825977/50/1270102276/1
--[profile_url]: xuxiaonian
--[domain]: xuxiaonian
--[weihao]:
--[gender]: m
--[followers_count]: 3220389
--[friends_count]: 102
--[statuses_count]: 2249
--[favourites_count]: 489
--[created_at]: Thu Apr 01 00:00:00 +0800 2010
--[following]: 1
--[allow_all_act_msg]:
--[geo_enabled]: 1
--[verified]: 1
--[verified_type]: 0
--[remark]:
--[allow_all_comment]: 1
--[avatar_large]: http://tp2.sinaimg.cn/1721825977/180/1270102276/1
--[verified_reason]: 中欧国际工商学院经济学与金融学教授 许小年
--[follow_me]:
--[online_status]: 1
--[bi_followers_count]: 85
--[lang]: zh-cn
--[retweeted_status]:
----[created_at]: Sun Mar 25 15:14:44 +0800 2012
----[id]: 3427485494637159
----[mid]: 3427485494637159
----[idstr]: 3427485494637159
----[text]: 【观点·吴敬琏:中经济矛盾社会矛盾几乎到临界点】目前国家权力对市场的干预,对价格管控,造成很大权力寻租空间,腐败蔓延不能有效制止。这也同时带来经济问题社会问题变成了政治问题。1992年已明确的顶层设计是市场经济改革,可如今人们数典忘祖,忘了这个改革目标——今日,吴敬琏在岭南论坛表示。
----[source]: 新浪微博
----[favorited]:
----[truncated]:
----[in_reply_to_status_id]:
----[in_reply_to_user_id]:
----[in_reply_to_screen_name]:
----[thumbnail_pic]: http://ww3.sinaimg.cn/thumbnail/61e04755jw1drc2dpro6fj.jpg
----[bmiddle_pic]: http://ww3.sinaimg.cn/bmiddle/61e04755jw1drc2dpro6fj.jpg
----[original_pic]: http://ww3.sinaimg.cn/large/61e04755jw1drc2dpro6fj.jpg
----[geo]:
----[user]:
--------[id]: 1642088277
--------[idstr]: 1642088277
--------[screen_name]: 财经网
--------[name]: 财经网
--------[province]: 11
--------[city]: 5
--------[location]: 北京 朝阳区
--------[description]: 价值观决定影响力——《财经网》; 与您共同 “微观”这个时代的方方面面——《财经网微博》。
--------[url]: http://www.caijing.com.cn/
--------[profile_image_url]: http://tp2.sinaimg.cn/1642088277/50/1283204216/1
--------[profile_url]: caijing
--------[domain]: caijing
--------[weihao]:
--------[gender]: m
--------[followers_count]: 2069308
--------[friends_count]: 1405
--------[statuses_count]: 35761
--------[favourites_count]: 48
--------[created_at]: Fri Aug 28 00:00:00 +0800 2009
--------[following]:
--------[allow_all_act_msg]:
--------[geo_enabled]: 1
--------[verified]: 1
--------[verified_type]: 3
--------[remark]:
--------[allow_all_comment]: 1
--------[avatar_large]: http://tp2.sinaimg.cn/1642088277/180/1283204216/1
--------[verified_reason]: 财经网官方微博
--------[follow_me]:
--------[online_status]: 0
--------[bi_followers_count]: 835
--------[lang]: zh-cn
--------[reposts_count]: 2721
--------[comments_count]: 562
--------[mlevel]: 0
--------[visible]:
----------------[type]: 0
----------------[list_id]: 0
----[reposts_count]: 756
----[comments_count]: 190
----[mlevel]: 0
----[visible]:
--------[type]: 0
--------[list_id]: 0

PHP 如何漂亮地打印数组

echo ""; print_r($array); // or var_dump() echo ""; ?>
  • hzcyclone
  • hzcyclone
  • 2013年07月24日 00:18
  • 3984

PHP数组输出三种形式 PHP打印数组

$bbbb=array("11"=>"aaa","22"=>"bbb"); //方式一:只能输出值value不能输出key foreach($bbbb as $color) echo $colo...
  • Vivian8725118
  • Vivian8725118
  • 2014年06月30日 15:24
  • 8013

PHP打印输出数组内容及结构函数print_r与var_dump

转自:http://www.jb51.net/article/15174.htm print_r()函数 例子:   $arr_test =array(1, 2, 3);...
  • frt007
  • frt007
  • 2016年06月19日 17:08
  • 1916

php数组的定义和输出方式总结

总结一下php中数组定义的方式,以及输出遍历的方式,多维数组定义和遍历等。详细解释都在代码里备注。 ...
  • Seven_Amber
  • Seven_Amber
  • 2017年03月20日 18:38
  • 782

实习日志-php-分别用print_r,var_dump,var_export打印数组

刚接触php少不了测试的时候打印数组,我今天试了试三个不同的打印方法得出的结果也不同PS:我打印的是一个二维数组 直观地看 print_r :就是将数组内容都打印出来了 var...
  • sinat_20774617
  • sinat_20774617
  • 2016年04月13日 15:52
  • 1461

PHP:输出数组的四种方式

PHP输出数组的四种方式:
  • AAA20090987
  • AAA20090987
  • 2013年05月22日 10:20
  • 19926

PHP递归实现无限分类数组处理

PHP递归实现无限分类数组处理 1,php递归算法实现无限分类 递归算法对无限分类的数组进行处理,分两种情况, 一种树状展示(数组包含子数组), 一种非树状展示(子类按照顺序排在父...
  • SiuKong_Ngau
  • SiuKong_Ngau
  • 2017年04月12日 14:38
  • 1653

php 数据集转换树、递归重组节点信息多维数组

将数据集转换成树 /** * 将返回的数据集转换成树 * @param array $list 数据集 * @param string $pk 主键 * @param st...
  • u012717614
  • u012717614
  • 2017年03月08日 15:01
  • 1595

[php] [Thinkphp]递归处理将分类按级别输出

1.一般在数据库中存储分类,分类之间的关系用parent_id来标识。在开发中有时需要根据分类的级别,展示分类,如下图: 使用递归方法,源代码如下: /** * *...
  • landylxy
  • landylxy
  • 2016年09月21日 14:41
  • 1193

php队列方式和递归方式遍历目录文件及子目录

如果目录很多,推荐队列方式,递归方式会慢,慢的原因:递归的实现是通过调用函数本身,函数调用的时候,每次调用时要做地址保存,参数传递等 [php] view plain copy   ...
  • wakice
  • wakice
  • 2017年02月20日 14:15
  • 608
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP递归打印数组中所有元素
举报原因:
原因补充:

(最多只允许输入30个字)