`
xitong
  • 浏览: 6192182 次
文章分类
社区版块
存档分类
最新评论

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;
}

效果




后记

没想到这篇文章看得人还很多,之前没写清楚需求,这次整理一下,一年多了自己也进步了很多,会渐渐完善自己的博客,欢迎关注,保证都是原创干货!
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics