加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

PHP:如何将数组转换为StdClass对象?

发布时间:2020-05-25 08:50:11 所属栏目:PHP 来源:互联网
导读:是否有自动执行此操作的 PHP函数? if (is_array($array)) { $obj = new StdClass(); foreach ($array as $key = $val){ $obj-$key = $val; } $array = $obj;} 为什么不投这个呢? $myObj = (object) array(nam

是否有自动执行此操作的 PHP函数?

if (is_array($array)) {
    $obj = new StdClass();
    foreach ($array as $key => $val){
        $obj->$key = $val;
    }
    $array = $obj;
}
为什么不投这个呢?
$myObj = (object) array("name" => "Jonathan");
print $myObj->name; // Jonathan

如果它是多维的,Richard Castera在his blog上提供以下解决方案:

function arrayToObject($array) {
  if(!is_array($array)) {
    return $array;
  }
  $object = new stdClass();
    if (is_array($array) && count($array) > 0) {
      foreach ($array as $name=>$value) {
        $name = strtolower(trim($name));
          if (!empty($name)) {
            $object->$name = arrayToObject($value);
          }
      }
      return $object; 
    } else {
      return FALSE;
    }
}

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读