private function extractMovies(DOMQuery $movieDomList)
{
$movieResult = array();
for ($i = 1; $i < $movieDomList->count(); $i++) {
$movieDom = new DOMQuery($movieDomList->get($i));
/* @var $movieDom DOMQuery */
$movieData = array();
$titledom = $movieDom->find('h4')->first();
if (!$titledom) {
continue;
}
$movieData['title'] = preg_replace('/\\s+\\(\\d\\d\\d\\d\\)$/', '', trim($titledom->text()));
$imgDomTmp = $movieDom->find('.image_sm img')->first();
$movieData['poster_url'] = $imgDomTmp ? $imgDomTmp->attr('src') : '';
$certImg = $movieDom->find('.certimage')->first();
$movieData['rated'] = $certImg ? $certImg->attr('title') : '';
$timeSpan = $movieDom->find('time')->first();
$movieData['runtime'] = $timeSpan ? intval(trim($timeSpan->text())) : -1;
$ratingDom = $movieDom->find('[itemprop=ratingValue]')->first();
$movieData['user_rating'] = $ratingDom ? floatval($ratingDom->text()) / self::MAX_RATING : 0;
$metaDom = $movieDom->find('span.nobr')->eq(1);
$metaDomScoreTmp = explode("/", preg_replace('/[^0-9\\/]+/', '', $metaDom->text()));
$movieData['critic_rating'] = floatval($metaDomScoreTmp[0]) / self::MAX_METASCORE;
//var_dump($movieDom->find('.showtimes')->count());exit;
//echo (preg_replace("/\s+/", " ", $movieDom->text())), "<br/><br/>";
//continue;
$movieResult[] = array('movie' => $movieData, 'showtimes' => $this->extractTimes($movieDom->find('.showtimes'), $movieDom));
}
return $movieResult;
}