Iam試圖在Facebook中從我的電影獲取我的電影中的特定號碼後突破一個foreach循環 。Foreach循環不會在PHP中破解,使用Facebook-api
我認爲這是一個小笨蛋。 這裏是我的了:
try {
// Proceed knowing you have a logged in user who's authenticated.
$user_movie_info = $facebook->api('/me/movies?fields=name,genre,release_date,picture,likes');
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
//print_r($user_movie_info);
$numer_of_movies_allowed = 2;
$movie_counter = 0;
foreach($user_movie_info['data'] as $movie) {
if ($movie_counter === $number_of_movies_allowed) {
break;
}
echo '<img src="' .$movie['picture']['data']['url']. '">';
echo $movie['name'];
echo $movie['release_date'];
echo $movie['genre'];
echo $movie['likes'];
echo "</br> </br>";
$movie_counter ++;
}
print ($movie_counter);
print ($numer_of_movies_allowed);
後2部電影中,沒有打出去,但顯示它們。
如果我使用:
if ($movie_counter == $number_of_movies_allowed)
或
if ((int)$movie_counter === (int)$number_of_movies_allowed)
沒有電影顯示在所有。
==可能會帶來意想不到的結果。最好將'$ movie_counter'解析爲整數(因爲它是預期的)。 – Manhim
真的嗎? '$ movie_counter'被初始化爲0,然後簡單地遞增。 '$ numer_of_movies_allowed'被設置爲一個整數並且永遠不會被修改。這裏沒有真正的理由在這裏使用'===',除非你的風格在任何地方都可以使用'==='(這當然不是一個壞主意)。 – sgroves
如果我使用「==」而不是「===」沒有電影可見。所以它立即爆發我想? – user1386906