本文實例講述了PHP數組與對象之間使用遞歸實現轉換的方法。分享給大家供大家參考。具體實現方法如下:
這裡涉及一些簡單的對象與數組的相互轉換的問題,采用遞歸寫了兩個方法如下:
?
1
2
3
4
5
6
7
8function arrayToObject($e){
if( gettype($e)!='array' ) return;
foreach($e as $k=>$v){
if( gettype($v)=='array' || getType($v)=='object' )
$e[$k]=(object)arrayToObject($v);
}
return (object)$e;
}
?
1
2
3
4
5
6
7
8
9function objectToArray($e){
$e=(array)$e;
foreach($e as $k=>$v){
if( gettype($v)=='resource' ) return;
if( gettype($v)=='object' || gettype($v)=='array' )
$e[$k]=(array)objectToArray($v);
}
return $e;
}
?
1
2
3
4
5
6
7
8function object_to_array($e) {
$_arr = is_object($e) ? get_object_vars($e) : $e;
foreach ($_arr as $key => $val) {
$val = (is_array($val) || is_object($val)) ? object_to_array($val) : $val;
$arr[$key] = $val;
}
return $arr;
}
希望本文所述對大家的php程序設計有所幫助。