предварительное совпадение, не считывающее содержимое между таблицей

preg_match_all('|<table cellspacing="0" cellpadding="0" summary="Flight Timetable search results" id="timeTable">(.*?)</table>|', $read, $foo, PREG_SET_ORDER);
print_r($foo);

вывод как просто

Множество ( )

Где я сделал ошибку

Смотрите, ребята,

На самом деле я хочу получить точные сведения из этого URL

я хочу выбрать эту информацию из этого URL

08:35 9W5048 ТОРОНТО ОЖИДАЕТСЯ 1358 Терминал три

Итак, я попробовал этот фрагмент, но он выдает ошибку, например

это мой фрагмент

$ read = file_get_contents ("http://www.heathrowairport.com/portal/site/heathrow/template.PAGE/menuitem.a43f3a72926ca3b1b0c52a499328c1a0/?javax.portlet.begCachekenTok&jtoken&token&javax.portlet.begCachekenTok&jtoken&token&javaxportlet.tpst=bde211e38117ef94303fde9faca12635&javax.portlet.prp_bde211e38117ef94303fde9faca12635_flightRoute=&javax.portlet.prp_bde211e38117ef94303fde9faca12635_flightNumber=9W5048&javax.portlet.prp_bde211e38117ef94303fde9faca12635_flightTerminal=»отн= "); // эхо $ read; preg_match_all ('/ (. ?) ‹/table> / si', $ read, $ foo, PREG_SET_ORDER); $ read1 = $ foo [0] [0]; preg_match_all ('/ (.?) ‹/tbody> / si', $ read1, $ foo1, PREG_SET_ORDER); print_r ($ foo1 [0] [0]);

Я получил ошибку как

Notice: Undefined offset: 0 in E:\wamp\www\plugin\read-airport-arraiwals.php on line 6

Notice: Undefined offset: 0 in E:\wamp\www\plugin\read-airport-arraiwals.php on line 8

person Bharanikumar    schedule 12.07.2010    source источник
comment
Регулярное выражение - не лучший способ обработки HTML. Вместо этого используйте парсер   -  person John La Rooy    schedule 12.07.2010
comment
Ваш вопрос Получить сведения из тега XML должен содержать всю информацию, необходимую для извлечения нужного данные. Регулярное выражение не для HTML.   -  person Gordon    schedule 12.07.2010
comment
Обязательное предупреждение: stackoverflow.com/questions/1732348/   -  person cHao    schedule 12.07.2010
comment
возможный дубликат Получение содержимого div (включая дочерние теги ) с DOM   -  person Gordon    schedule 12.07.2010
comment
@Bharanikumar Конечно, это так. Это страница XHTML, что делает ее XML-приложением. Но даже если бы это была HTML-страница, производная от SGML, ее можно было бы анализировать с помощью DOM, XMLReader и т. Д.   -  person Gordon    schedule 12.07.2010


Ответы (1)


preg_match_all('/timeTable" .*<tbody>(.*?)<\/table>/smU', $read, $foo, PREG_SET_ORDER);
preg_match_all('/<(th|td).*>(.*)<\/(th|td)>/smU', $foo[0][1], $result, PREG_SET_ORDER);
print_r($result);

И вы получите необходимые данные. Быстрый ответ, потому что у меня нет времени на создание единого шаблона для этого, но этот сработает.

person Narcis Radu    schedule 12.07.2010
comment
Можно ли сделать массив очень простым, то есть значения в одномерном массиве - person Bharanikumar; 12.07.2010