Heim  >  Artikel  >  Backend-Entwicklung  >  php array读取,该如何解决

php array读取,该如何解决

WBOY
WBOYOriginal
2016-06-13 12:11:241120Durchsuche

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
------解决思路----------------------
第一个

<br />$obj = new stdClass();<br />$obj->userName = 'cheng';<br />$arr = array($obj);<br /><br />echo $arr[0]->userName;<br />


第二个
<br />$obj1 = new stdClass();<br />$obj1->userName = 'cheng';<br /><br />$obj = new stdClass();<br />$obj->did = 1;<br />$obj->comment = array('user_id'=>4,'userName'=>array($obj1));<br /><br />$arr = array($obj);<br />echo $arr[0]->comment['userName'][0]->userName;<br />


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

<br />Array<br />(<br />    [0] => Array<br />        (<br />            [did] => 1<br />            [comment] => Array<br />                (<br />                    [user_id] => 4<br />                    [userName] => Array<br />                        (<br />                            [0] => Array<br />                                (<br />                                    [userName] => cheng<br />                                )<br /><br />                        )<br /><br />                )<br /><br />        )<br /><br />)<br />

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn