指定给for循环的空数组$movies将产生一个警告。检查null可以避免这种情况。我并不认为这是丑陋或凌乱的代码,我只是想知道是否有更优雅的方法来处理这些实例。
function get_db_movies($db_handle) {
$query = "SELECT title FROM movies";
$result = $db_handle->query($query);
$movies = null;
while($row = mysql_fetch_array($result)){
$movie = new Movie($row['title'], $db_handle);
$movies[] = $movie;
}
return $movies;
}
$movies = get_db_movies($db_handle);
foreach($movies as $movie) {
$imdbCrawl = new imdbCrawler($movie);
if($imdbCrawl->verifyMatch() && $imdbCrawl->isMovieFound()) {
$imdbCrawl->getRating();
$imdbCrawl->getPlot();
$movie->syncDatabase();
} else {
echo "Movie crawl failed: " . $movie->getTitle();
}
}发布于 2011-05-19 16:28:58
将$movies初始化为空数组而不是null:
$movies = array();发布于 2011-05-19 16:30:53
您可以在使用前初始化数组,以避免出现警告:
$movies = array();https://stackoverflow.com/questions/6055821
复制相似问题