php實(shí)現(xiàn)將二維關(guān)聯(lián)數(shù)組轉(zhuǎn)換成字符串的方法詳解
本文實(shí)例講述了php實(shí)現(xiàn)將二維關(guān)聯(lián)數(shù)組轉(zhuǎn)換成字符串的方法。分享給大家供大家參考,具體如下:
需求
項(xiàng)目中遇到了二維關(guān)聯(lián)數(shù)組轉(zhuǎn)字符串的問題,查閱相關(guān)資料,寫了如下程序,并且能過濾重復(fù)的關(guān)鍵字。
舉例,php的二維數(shù)組如下:
$name = array(
"self" => "wangzhengyi",
"student" => array(
"chenshan",
"xiaolingang"
),
"unkmow" => "chaikun",
"teacher" => array(
"huangwei",
"fanwenqing"
)
);
最后要獲得的string格式是:
wangzhengyi,chenshan,xiaolingang,chaikun,huangwei,fanwenqing
思路
方法
利用static關(guān)鍵字和遞歸的思想去遍歷數(shù)組
自定義函數(shù)代碼(php)
function arrToStr ($array)
{
// 定義存儲(chǔ)所有字符串的數(shù)組
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;
}
//數(shù)組去重
$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)
{
// 定義存儲(chǔ)所有字符串的數(shù)組
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;
}
//數(shù)組去重
$r_arr = array_unique($r_arr);
$string = implode(",", $r_arr);
return $string;
}
echo arrToStr($name);
?>
運(yùn)行結(jié)果:
wangzhengyi,chenshan,xiaolingang,chaikun,huangwei,fanwenqing
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結(jié)》、《php字符串(string)用法總結(jié)》、《php常用函數(shù)與技巧總結(jié)》、《PHP錯(cuò)誤與異常處理方法總結(jié)》、《PHP基本語法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
- PHP 數(shù)組和字符串互相轉(zhuǎn)換實(shí)現(xiàn)方法
- PHP 將逗號(hào)、空格、回車分隔的字符串轉(zhuǎn)換為數(shù)組的函數(shù)
- php二維數(shù)組轉(zhuǎn)成字符串示例
- php的數(shù)組與字符串的轉(zhuǎn)換函數(shù)整理匯總
- php中將數(shù)組轉(zhuǎn)成字符串并保存到數(shù)據(jù)庫中的函數(shù)代碼
- PHP實(shí)現(xiàn)多維數(shù)組轉(zhuǎn)字符串和多維數(shù)組轉(zhuǎn)一維數(shù)組的方法
- 改寫函數(shù)實(shí)現(xiàn)PHP二維/三維數(shù)組轉(zhuǎn)字符串
- php中利用explode函數(shù)分割字符串到數(shù)組
- PHP explode()函數(shù)的幾個(gè)應(yīng)用和implode()函數(shù)有什么區(qū)別
- php連接函數(shù)implode與分割explode的深入解析
- PHP的explode和implode的使用說明
- PHP獲取數(shù)組表示的路徑方法分析【數(shù)組轉(zhuǎn)字符串】
相關(guān)文章
PHP根據(jù)手機(jī)號(hào)判斷運(yùn)營商(詳細(xì)介紹附代碼)
這篇文章主要介紹了PHP根據(jù)手機(jī)號(hào)判斷運(yùn)營商,詳細(xì)介紹附代碼,大家可以根據(jù)最新的號(hào)段進(jìn)行添加即可,通過正則判斷實(shí)現(xiàn),需要的朋友可以參考下2018-01-01
編譯php 5.2.14+fpm+memcached(具體操作詳解)
本篇文章是對編譯php5.2.14+fpm+memcached的具體操作進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
PHP實(shí)現(xiàn)動(dòng)態(tài)獲取函數(shù)參數(shù)的方法示例
這篇文章主要介紹了PHP實(shí)現(xiàn)動(dòng)態(tài)獲取函數(shù)參數(shù)的方法,結(jié)合實(shí)例形式分析了php針對函數(shù)參數(shù)操作func_num_args()、func_get_arg()及func_get_args()函數(shù)相關(guān)使用技巧,需要的朋友可以參考下2018-04-04
php多次include后導(dǎo)致全局變量global失效的解決方法
這篇文章主要介紹了php多次include后導(dǎo)致全局變量global失效的解決方法,實(shí)例分析了$GLOBALS失效的原理與解決方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-02-02

