Home >php教程 >PHP源码 >PHP object(SimpleXMLElement) 对象转换为数组

PHP object(SimpleXMLElement) 对象转换为数组

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-06 09:32:322020browse
跳至 [1] [2] [全屏预览]
object(SimpleXMLElement)[9]  
public 'result' => 
    object(SimpleXMLElement)[8]      
      public 'err_code' => string '0' (length=1)
      public 'model' => string '000000000000^000000000000' (length=26)
      public 'success' => string 'true' (length=4)
  public 'request_id' => string '000000000000' (length=13)

2. [代码]示例:PHP object(SimpleXMLElement) 对象转换为数组的方式     跳至 [1] [2] [全屏预览]

class xml{
     
    /**
    * object(SimpleXMLElement) 对象转换为数组
    * convert simplexml object to array sets
    * $array_tags 表示需要转为数组的 xml 标签。例:array('item', '')
    * 出错返回False
    *
    * @param object $simplexml_obj
    * @param array $array_tags
    * @param int $strip_white 是否清除左右空格
    * @return mixed
    */
    public static function toArray($simplexml_obj, $array_tags=array(), $strip_white=1)
    {    
        if( $simplexml_obj )
        {
            if( count($simplexml_obj)==0 )
                return $strip_white?trim((string)$simplexml_obj):(string)$simplexml_obj;
      
            $attr = array();
            foreach ($simplexml_obj as $k=>$val) {
                if( !empty($array_tags) && in_array($k, $array_tags) ) {
                    $attr[] = self::toArray($val, $array_tags, $strip_white);
                }else{
                    $attr[$k] = self::toArray($val, $array_tags, $strip_white);
                }
            }
            return $attr;
        }
          
        return false;
    }
}
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn