本文實例講述了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程序設計有所幫助。
新聞熱點
疑難解答
圖片精選