>  기사  >  php教程  >  PHP数组与对象之间使用递归实现转换的方法

PHP数组与对象之间使用递归实现转换的方法

WBOY
WBOY원래의
2016-06-13 09:00:07969검색

PHP数组与对象之间使用递归实现转换的方法

   本文实例讲述了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程序设计有所帮助。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.