php实现二维关联数组转换成字符串的方法
程序员文章站
2022-03-21 09:18:20
...
这篇文章主要介绍了php实现将二维关联数组转换成字符串的方法,涉及php数组递归遍历、转换、去重、拼接等相关操作技巧,需要的朋友可以参考下
具体如下:
需求
项目中遇到了二维关联数组转字符串的问题,查阅相关资料,写了如下程序,并且能过滤重复的关键字。
举例,php的二维数组如下:
$name = array( "self" => "wangzhengyi", "student" => array( "chenshan", "xiaolingang" ), "unkmow" => "chaikun", "teacher" => array( "huangwei", "fanwenqing" ) );
最后要获得的string格式是:
wangzhengyi,chenshan,xiaolingang,chaikun,huangwei,fanwenqing
思路
方法
利用static关键字和递归的思想去遍历数组
自定义函数代码(php)
function arrToStr ($array) { // 定义存储所有字符串的数组 static $r_arr = array(); if (is_array($array)) { foreach ($array as $key => $value) { if (is_array($value)) { // 递归遍历 arrToStr($value); } else { $r_arr[] = $value; } } } else if (is_string($array)) { $r_arr[] = $array; } //数组去重 $r_arr = array_unique($r_arr); $string = implode(",", $r_arr); return $string; }
完整示例代码:
<?php $name = array( "self" => "wangzhengyi", "student" => array( "chenshan", "xiaolingang" ), "unkmow" => "chaikun", "teacher" => array( "huangwei", "fanwenqing" ) ); function arrToStr ($array) { // 定义存储所有字符串的数组 static $r_arr = array(); if (is_array($array)) { foreach ($array as $key => $value) { if (is_array($value)) { // 递归遍历 arrToStr($value); } else { $r_arr[] = $value; } } } else if (is_string($array)) { $r_arr[] = $array; } //数组去重 $r_arr = array_unique($r_arr); $string = implode(",", $r_arr); return $string; } echo arrToStr($name); ?>
运行结果:
wangzhengyi,chenshan,xiaolingang,chaikun,huangwei,fanwenqing
相关推荐:
以上就是php实现二维关联数组转换成字符串的方法的详细内容,更多请关注其它相关文章!