如何搜索数组以查找包含特定值的数组?

时间:2013-11-06 14:19:03

标签: php arrays json api

我确信这非常简单,但我是数组的新手,我正在使用TMDB API和PHP。我想要得到导演的名字。 这是数组的缩短版本:

Array
(
    [credits] => Array
    (
            [crew] => Array
            (
                    [0] => Array
                    (
                        [id] => 40243
                        [name] => Gil Junger
                        [department] => Directing
                        [job] => Director
                        [profile_path] => 
                    )
            )

    )
)

我到目前为止:

$film_query = file_get_contents("http://api.themoviedb.org/3/movie/".$film_id."?api_key=".$key."&append_to_response=credits,images&json_callback=?");
$film_json = json_decode($film_query, true);
$director = $film_json['credits']['crew']['job'];

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

这个怎么样:

function getDirector(array $crew) {
    foreach($crew as $person) {
        if($person['job'] == 'Director') {
            return $person['name'];
        }
    }
    return null;
}

在您的代码中,您会将$film_json['credits']['crew']作为$crew参数传递。