0

我对 PHP 还很陌生,并且几天来一直在循环遍历这个数组......叹息......

http://pastebin.com/Rs6P4e4y

我正在尝试获取作者和导演数组的名称和头像值。

我一直在试图找出与它一起使用的 foreach 函数,但没有运气。

<?php   foreach ($directors as $key => $value){
            //print_r($value);
        }
?>

任何帮助表示赞赏。

4

4 回答 4

2

你在找这样的野兽吗?你没有写你想如何处理它们,但希望这对你有帮助。

$directors = array();

foreach( $object->people->directors as $o )
    $directors[] = array( 'name' => $o->name, 'headshot' => $o->images->headshot );

$writers = array();

foreach( $object->people->writers as $o )
    $writers[] = array( 'name' => $o->name, 'headshot' => $o->images->headshot );

var_dump( $directors );
var_dump( $writers );

最后请注意,如果不能保证这些成员已设置好,请isset在进行任何脏活之前使用。

希望这可以帮助。

于 2013-10-26T00:08:21.400 回答
1

用于->访问对象的属性。

foreach ($directors as $director) {
    echo 'Name: ' . $director->name . "\n";
    echo "Headshot: " . $director->images->headshot . "\n";
}
于 2013-10-26T00:09:37.830 回答
1

您的解决方案已经发布,但我想添加一些内容:

这不是一个数组,它是一个对象。实际上,对象的 director 属性是一个数组。查找对象是什么以及关联数组是什么!

对象有属性,数组有键和值。

$object = new stdClass();
$object->something = 'this is an object property';

$array = new array();
$array['something'] = 'this is an array key named something';

$object->arrayproperty = $array;
echo $object->arrayproperty['something']; //this is an array key named something

祝你学习 PHP 好运!:)

于 2013-10-26T00:20:17.370 回答
0

拥有 variable $foo,它是一个对象,您可以bar使用语法访问属性:

$foo->bar

因此,如果您有一个名为 od 的数组$directors,您可以简单地以相同的方式使用它foreach

foreach ($directors as $value){
   echo $value->name." ".$value->images->headshot;
}
于 2013-10-26T00:06:55.687 回答