这篇文章主要介绍了php实现将二维关联数组转换成字符串的方法,涉及php数组递归遍历、转换、去重、拼接等相关操作技巧,需要的朋友可以参考下
本文实例讲述了PHP实现将二维关联数组转换成字符串的方法。分享给大家供大家参考,具体如下:
需求
项目中遇到了二维关联数组转字符串的问题,查阅相关资料,写了如下程序,并且能过滤重复的关键字。
举例,PHP的二维数组如下:
"wangzhengyi","student" => array(
"chenshan","xiaolingang"
),"unkmow" => "chaikun","teacher" => array(
"huangwei","fanwenqing"
)
);
最后要获得的string格式是:
思路
方法
利用static关键字和递归的思想去遍历数组
自定义函数代码(PHP)
$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;
}
完整示例代码:
"wangzhengyi","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);
?>
运行结果:
更多关于PHP相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》、《》、《》及《PHP常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。