您好,欢迎访问一九零五行业门户网

php array读取,该如何解决

php array读取
array
(
    [0] => stdclass object
(
[username] => cheng
)
)
array
(
    [0] => stdclass object
        (
            [did] => 1
            [comment] => array
                (
                     [user_id] => 4
                     [username] => array
                    (
                        [0] => stdclass object
                        (
                            [username] => cheng
                        )
                )
          )
)
如何读取到username的值
------解决思路----------------------
是不是从json字符串读出来的
json_decode($json_str, true);
这样出来的就不是基类对象了
------解决思路----------------------
1、$ar[0]->username
2、$ar[0]->comment->username[0]->username
如果你是从 json 解码过来的数据,应给 json_decode 的第二个参数赋 true
$ar = json_decode($s, true)

$ar = json_decode($s, 1)
这样就全是数组了
1、$ar[0]['username']
2、$ar[0]['comment']['username'][0]['username']
------解决思路----------------------
$array[0]->comment['username'][0]->username
------解决思路----------------------
第一个
$obj = new stdclass();
$obj->username = 'cheng';
$arr = array($obj);
echo $arr[0]->username;

第二个
$obj1 = new stdclass();
$obj1->username = 'cheng';
$obj = new stdclass();
$obj->did = 1;
$obj->comment = array('user_id'=>4,'username'=>array($obj1));
$arr = array($obj);
echo $arr[0]->comment['username'][0]->username;

如果简单点可以全部变数组
$obj1 = new stdclass();
$obj1->username = 'cheng';
$obj = new stdclass();
$obj->did = 1;
$obj->comment = array('user_id'=>4,'username'=>array($obj1));
$arr = array($obj);
$result = json_decode(json_encode($arr), true);
print_r($result);

array
(
[0] => array
(
[did] => 1
[comment] => array
(
[user_id] => 4
[username] => array
(
[0] => array
(
[username] => cheng
)
)
)
)
)

其它类似信息

推荐信息