如何将索引属性自动添加到PHP对象数组中

时间:2011-11-05 20:06:53

标签: php arrays object indexing

我正在构建一个对象数组,如下所示:

$my_array[] = (object) array(
    'url' => 'http://someurl.com',
    'created' => '06/26/2011',
    'some_value' => true,
);


$my_array[] = (object) array(
    'url' => 'http://someurl2.com',
    'created' => '07/26/2011',
    'some_value' => false,
);


$my_array[] = (object) array(
    'url' => 'http://someurl3.com',
    'created' => '08/26/2011',
    'some_value' => true,
);

现在,我知道我正在为数组键生成索引值。但是我也希望将索引值作为对象内的属性,即index =>在这种情况下,1,2或3。除非我需要它是自动的。

有什么东西可以像这样工作吗?哪里有$ key自动添加?

$my_array[] = (object) array(
            'index' => $key,
    'url' => 'http://someurl3.com',
    'created' => '08/26/2011',
    'some_value' => true,
);

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

不确定为什么要将数组键添加到元素中,当您逐步执行循环时,这将是您可以使用的:

foreach ($my_array as $key => $element) 
{
    var_dump($element['url']);
    var_dump($key);
}

只是一个问题,您是否将数组作为对象进行类型转换?

答案 1 :(得分:0)

尝试使用关键功能 - http://php.net/manual/en/function.key.php

'index' => key( this ),

不确定它是否有效,但我会这样做