返回顶部

[文摘] PHP中把stdClass Object转array的几个方法

[复制链接]
awagink 显示全部楼层 发表于 2016-2-1 18:06:08 |阅读模式 打印 上一主题 下一主题

  方法一:

    复制代码代码如下:

    //PHP stdClass Object转array

    function object_array($array) {

    if(is_object($array)) {

    $array = (array)$array;

    } if(is_array($array)) {

    foreach($array as $key=>$value) {

    $array[$key] = object_array($value);

    }

    }

    return $array;

    }

    方法二:

    复制代码代码如下:

    $array = json_decode(json_encode(simplexml_load_string($xmlString)),TRUE);

    方法三:


    复制代码代码如下:

    function object2array_pre(&$object) {

    if (is_object($object)) {

    $arr = (array)($object);

    } else {

    $arr = &$object;

    }

    if (is_array($arr)) {

    foreach($arr as $varName => $varValue){

    $arr[$varName] = $this->object2array($varValue);

    }

    }

    return $arr;

    }

    如果是10W的数据量的话,执行要进1s,结构再复杂些,可以达到3s, 性能太差了

    可以用以下替换:

    复制代码代码如下:

    function object2array(&$object) {

    $object = json_decode( json_encode( $object),true);

    return $object;

    }

    但是对json的特性,只能是针对utf8的,否则得先转码下。


您需要登录后才可以回帖 登录 | 注册

本版积分规则

纳速健身网成立于2006年8月,是国内优秀健身运动网站,现拥浏览人数超30万。网站是集养生、武术、太极拳和健身气功等多种健身项目于一体的多功能交流平台。平台提供大量优质的教学视频、伴奏音乐(太极拳晨练音乐,广场舞音乐,健身气功音乐)、图文教程、运动科普和经验分享,为健身爱好者提供完善的运动指导平台。
  • 纳速QQ群乙:151815303
  • 纳速QQ群丙:79104490
  • 微信交流群:微信好友搜索【nasuwang】加小纳微信进群交流健身知识,备注【纳速】
  •                     或者扫描页面底部右侧二维码添加小纳微信>>>
  • 微信公众号

  • 微信群客服交流

  • Copyright © 2006-2021, 纳速健身网. | | 辽ICP备13002388号-1 辽公安网备21050202000005号公安网备号 纳速武术-乙 QQ