Ответов: 6 Просмотров: 136
|
Имеется телепрограмма в формате XMLTV http://www[dot]teleguide[dot]info/downlo[dot][dot][dot]ew3/xmltv[dot]xml[dot]gz
требуется выводить на сайте эту программу, сам файл весит 9,48 МБ (9 946 177 байт) , пытаюсь написать скрипт для парсинга , получается типа того:
PHP:
скопировать код в буфер обмена
function startElement($parser, $name, $attrs) // $parser - уникальный идентификатор парсера // (т.к. мы можем использовать несколько парсеров) // $name - имя обнаруженного элемента // $attrs - массив атрибутов обнаруженного элемента { global $depth; echo "<b>Element: $name</b><br>"; // имя элемента $depth++; // увеличиваем глубину, чтобы браузер показал отступы foreach ($attrs as $attr => $value) { // выводим имя атрибута и его значение echo 'Attribute: ' . $attr . ' = ' . $value . '<br>'; } } function endElement($parser, $name)// $parser - уникальный идентификатор парсера // $name - имя обнаруженного элемента { global $depth; $depth--; // уменьшаем глубину } function stringElement($parser, $str) { global $depth; echo 'String: '.$str.'<br>'; // выводим строку } } $depth = 0; $file = "xmltv.xml"; if (!($fp = fopen($file, "r"))) { die("could not open XML input"); } while ($data = fgets($fp)) { { echo "<br>XML Error: "; break; } }
в браузер выводится дерево элементов типа :
Цитата:Element: TV
Attribute: GENERATOR-INFO-NAME = TVH_W/1.0
Attribute: GENERATOR-INFO-URL = http://www[dot]teleguide[dot]info/
Element: CHANNEL
Attribute: ID = 1
Element: DISPLAY-NAME
Attribute: LANG = ru
String: Первый канал
Element: CHANNEL
Attribute: ID = 2
Element: DISPLAY-NAME
Attribute: LANG = ru
String: Россия
Element: CHANNEL
Attribute: ID = 3
Element: DISPLAY-NAME
Attribute: LANG = ru
String: ТВЦ
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
и.т.д. до конца
вопрос первый, как мне нормально вывести это для отображения в ХТМЛ т.е. в нормальный вид чтобы на сайте отображалось, а не
Цитата:Element: TV
Attribute: GENERATOR-INFO-NAME = TVH_W/1.0
Attribute: GENERATOR-INFO-URL = http://www[dot]teleguide[dot]info/
Element: CHANNEL
Attribute: ID = 1
Element: DISPLAY-NAME
Attribute: LANG = ru
String: Первый канал
Element: CHANNEL
Attribute: ID = 2
Element: DISPLAY-NAME
Attribute: LANG = ru
String: Россия
Element: CHANNEL
Attribute: ID = 3
Element: DISPLAY-NAME
Attribute: LANG = ru
String: ТВЦ
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
и.т.д. до конца
вопрос второй т.к. фал весит почти 10 МБ браузер гибнет во время парсинга
вопрос третий есть ли альтернативный способ вывод этой программы в ХМЛ формате на сайте чтобы примерно ка как на tv.mail.ru уж выглядело, но с использованием данного файла
Цитата:http://www.teleguide.info/download/new3/xmltv.xml.gz как источник |