一尘不染

如何访问数组的对象(stdClass对象)成员/元素的属性?

php

print_r()我的阵列我得到如下:

Array ( 
    [0] => 
        stdClass Object 
        ( 
            [id] => 25 
            [time] => 2014-01-16 16:35:17 
            [fname] => 4 
            [text] => 5 
            [url] => 6 
        ) 
)

如何访问数组中的特定值?由于stdClass对象,以下代码不起作用

echo $array['id'];

阅读 401

收藏
2020-05-29

共1个答案

一尘不染

要访问数组成员,请使用 $array['KEY'];

要访问对象成员,请使用 $obj->KEY;

要访问对象数组内的对象成员:
$array[0]//获取数组中的第一个对象
$array[0]->KEY//然后访问其键

您也可以像这样循环遍历一系列对象:

foreach ($arrayOfObjs as $key => $object) {
    echo $object->object_property;
}

将数组视为事物的集合。这是一个袋子,您可以在其中存储您的东西,并给他们一个唯一的ID(密钥),然后使用该密钥访问它们(或将东西从袋子中取出)。我想在这里保持简单,但是这个包也可以包含其他包:)

更新(这可能有助于某人更好地了解):

数组包含“ key”和“
value”对。为数组成员提供键是可选的,在这种情况下,会自动为它分配一个数字键,该键以0开头,并为每个其他成员递增1。我们可以通过数组“”从数组中检索“值key”。

因此,我们可以通过以下方式(相对于键)定义数组:

第一种方法:

$colorPallete = ['red', 'blue', 'green'];

上面的数组将自动分配有数字键。因此,分配给红色的键将为0,对于蓝色为1,依此类推。

从上面的数组中获取值:

$colorPallete[0]; // will output 'red'
$colorPallete[1]; // will output 'blue'
$colorPallete[2]; // will output 'green'

第二种方法:

$colorPallete = ['love' => 'red', 'trust' => 'blue', 'envy' => 'green']; // we expliicitely define the keys ourself.

从上面的数组中获取值:

$colorPallete['love']; // will output 'red'
$colorPallete['trust']; // will output 'blue'
$colorPallete['envy']; // will output 'green'
2020-05-29