如何转换数组在PHP对象? [英] How to convert an array to object in PHP?

查看:95
本文介绍了如何转换数组在PHP对象?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我如何可以转换一个这样的数组对象?


    [128] =>阵列
        (
            [现状] =>图A.
 Facebook的水平滚动条显示出来1024x768的屏幕分辨率。
        )    [129] =>阵列
        (
            [现状] =>日前在工作中,我有一些空闲时间
        ))


解决方案

对于我来说这一次的工作。

 函数array_to_obj($阵列,放大器和; $ OBJ)
  {
    的foreach($数组$关键=> $值)
    {
      如果(is_array($值))
      {
      $ obj-> $键=新stdClass的();
      array_to_obj(价值$,$ obj-> $键);
      }
      其他
      {
        $ obj-> $键= $价值;
      }
    }
  返回$ OBJ;
  }功能arrayToObject($数组)
{
 $对象=新stdClass的();
 返回array_to_obj($数组$对象);
}

用法:

  $ myObject的= arrayToObject($数组);
的print_r($ myObject的);

的回报:

  [127] => stdClass的对象
        (
            [现状] =>你有没有建立一个真正伟大的寻找网站设计
        )    [128] => stdClass的对象
        (
            [现状] =>图A.
 Facebook的水平滚动条显示出来1024x768的屏幕分辨率。
        )    [129] => stdClass的对象
        (
            [现状] =>在工作​​中有一天,我有一些空闲时间
        )

像往常一样,你可以循环它喜欢的:

 的foreach($为MyObject为$ OBJ)
{
  回声$ obj->现状;
}

How can i convert an array like this to object?

    [128] => Array
        (
            [status] => Figure A.
 Facebook's horizontal scrollbars showing up on a 1024x768 screen resolution.
        )

    [129] => Array
        (
            [status] => The other day at work, I had some spare time
        )

)

解决方案

This one worked for me

  function array_to_obj($array, &$obj)
  {
    foreach ($array as $key => $value)
    {
      if (is_array($value))
      {
      $obj->$key = new stdClass();
      array_to_obj($value, $obj->$key);
      }
      else
      {
        $obj->$key = $value;
      }
    }
  return $obj;
  }

function arrayToObject($array)
{
 $object= new stdClass();
 return array_to_obj($array,$object);
}

usage :

$myobject = arrayToObject($array);
print_r($myobject);

returns :

    [127] => stdClass Object
        (
            [status] => Have you ever created a really great looking website design
        )

    [128] => stdClass Object
        (
            [status] => Figure A.
 Facebook's horizontal scrollbars showing up on a 1024x768 screen resolution.
        )

    [129] => stdClass Object
        (
            [status] => The other day at work, I had some spare time
        )

like usual you can loop it like:

foreach($myobject as $obj)
{
  echo $obj->status;
}

这篇关于如何转换数组在PHP对象?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆