форум вебмастероff на AlfaSpace.NET

Ubuntu и Linux |реактивный бесплатный хостинг | Киноклуб. ВСЁ БЕСПЛАТНО!
база знаний хостинга | правила форума

  Начало ° Ответить ° Статистика ° Опрос ° Регистрация ° Поиск ° FAQ °
Форум вебмастеров на AlfaSpace.NET / Создание сайта / Чтение xml спомощь пхп
Автор Сообщение
acsid
Alfa Guru

2469
# Дата: 9 Май 2006 09:23 ° Поправил: acsid


можна какнибудь взять данные из xml страницы спомощью пхп?
может статейка есть по обработке.. кароче неед хелп

<?php 
$doc = domxml_open_file("users.xml"); 
$context = xpath_new_context($doc); 
//Получим корневой объект 
$root = $doc->document_element(); 
/* Создадим новую переменную, которая будет хранить команды XPath 
Команда "//*" найдёт все дочерние узлы для коревого узла. */ 
$expr = "//*"; 
/*Функция xpath_eval выполняет команду XPath с контекстом документа. 
Она возвращает иассив найденых узлов, если возникают ошибки возвращает false */ 
if($path = xpath_eval($context, $epr) { 
    $tmpArray = $path->nodest; 
    while(list() = each($tmpArray) { 
        $i++; 
        echo($tmpArray[$i]->name); 
        echo("<br>".$tmpArray[$i]->content); 
    } 
} else { 
    echo("Expression - $expr is invalid"); //Типо команда не верная =) 
} 
?> 


нащел кое что .. но как с этим :
$tmpArray[$i]->name; 
$tmpArray[$i]->content; 

дальше работать не ясно

acsid
Alfa Guru

2469
# Дата: 10 Май 2006 08:59 ° Поправил: acsid


этот скрипт ваще левый..

неужели никто не вкурсе как парсить хмл?
-------------------------------------------------------------------------------- -----
отпарсил хмл

в итоге получается такой ужасный массив:

Array ( [0] => Array ( [name] => MMWEATHER [content] => [child] => Array 
( [0] => Array ( [name] => REPORT [attrs] => Array ( [TYPE] => frc3 ) [content] 
=> [child] => Array ( [0] => Array ( [name] => TOWN [attrs] => Array ( [INDEX] 
=> 99987 [SNAME] => %C8%E3%F0%E8%EC [LATITUDE] => 63 [LONGITUDE] => 64 ) [conten 
t] => [child] => Array ( [0] => Array ( [name] => FORECAST [attrs] => Array ( [D 
AY] => 10 [MONTH] => 5 [YEAR] => 2006 [HOUR] => 23 [TOD] => 3 [PREDICT] => 18 [W 
EEKDAY] => 4 ) [content] => [child] => Array ( [0] => Array ( [name] => PHENOMEN 
A [attrs] => Array ( [CLOUDINESS] => 2 [PRECIPITATION] => 10 [RPOWER] => 0 [SPOW 
ER] => 0 ) ) [1] => Array ( [name] => PRESSURE [attrs] => Array ( [MAX] => 760 [ 
MIN] => 758 ) ) [2] => Array ( [name] => TEMPERATURE [attrs] => Array ( [MAX] => 
3 [MIN] => 1 ) ) [3] => Array ( [name] => WIND [attrs] => Array ( [MIN] => 1 [M 
AX] => 3 [DIRECTION] => 1 ) ) [4] => Array ( [name] => RELWET [attrs] => Array ( 
[MAX] => 89 [MIN] => 84 ) ) [5] => Array ( [name] => HEAT [attrs] => Array ( [M 
IN] => 1 [MAX] => 3 ) ) ) ) [1] => Array ( [name] => FORECAST [attrs] => Array ( 
[DAY] => 11 [MONTH] => 5 [YEAR] => 2006 [HOUR] => 5 [TOD] => 0 [PREDICT] => 24 
[WEEKDAY] => 5 ) [content] => [child] => Array ( [0] => Array ( [name] => PHENOM 
ENA [attrs] => Array ( [CLOUDINESS] => 3 [PRECIPITATION] => 6 [RPOWER] => 0 [SPO 
WER] => 0 ) ) [1] => Array ( [name] => PRESSURE [attrs] => Array ( [MAX] => 759 
[MIN] => 757 ) ) [2] => Array ( [name] => TEMPERATURE [attrs] => Array ( [MAX] = 
> 1 [MIN] => -1 ) ) [3] => Array ( [name] => WIND [attrs] => Array ( [MIN] => 2 
[MAX] => 5 [DIRECTION] => 1 ) ) [4] => Array ( [name] => RELWET [attrs] => Array 
( [MAX] => 89 [MIN] => 84 ) ) [5] => Array ( [name] => HEAT [attrs] => Array ( 
[MIN] => -1 [MAX] => 1 ) ) ) ) [2] => Array ( [name] => FORECAST [attrs] => Arra 
y ( [DAY] => 11 [MONTH] => 5 [YEAR] => 2006 [HOUR] => 11 [TOD] => 1 [PREDICT] => 
30 [WEEKDAY] => 5 ) [content] => [child] => Array ( [0] => Array ( [name] => PH 
ENOMENA [attrs] => Array ( [CLOUDINESS] => 3 [PRECIPITATION] => 4 [RPOWER] => 0 
[SPOWER] => 0 ) ) [1] => Array ( [name] => PRESSURE [attrs] => Array ( [MAX] => 
757 [MIN] => 755 ) ) [2] => Array ( [name] => TEMPERATURE [attrs] => Array ( [MA 
X] => 4 [MIN] => 2 ) ) [3] => Array ( [name] => WIND [attrs] => Array ( [MIN] => 
2 [MAX] => 5 [DIRECTION] => 2 ) ) [4] => Array ( [name] => RELWET [attrs] => Ar 
ray ( [MAX] => 77 [MIN] => 72 ) ) [5] => Array ( [name] => HEAT [attrs] => Array 
( [MIN] => 2 [MAX] => 4 ) ) ) ) [3] => Array ( [name] => FORECAST [attrs] => Ar 
ray ( [DAY] => 11 [MONTH] => 5 [YEAR] => 2006 [HOUR] => 17 [TOD] => 2 [PREDICT] 
=> 36 [WEEKDAY] => 5 ) [content] => [child] => Array ( [0] => Array ( [name] => 
PHENOMENA [attrs] => Array ( [CLOUDINESS] => 3 [PRECIPITATION] => 4 [RPOWER] => 
0 [SPOWER] => 0 ) ) [1] => Array ( [name] => PRESSURE [attrs] => Array ( [MAX] = 
> 756 [MIN] => 754 ) ) [2] => Array ( [name] => TEMPERATURE [attrs] => Array ( [ 
MAX] => 5 [MIN] => 3 ) ) [3] => Array ( [name] => WIND [attrs] => Array ( [MIN] 
=> 2 [MAX] => 5 [DIRECTION] => 2 ) ) [4] => Array ( [name] => RELWET [attrs] => 
Array ( [MAX] => 79 [MIN] => 74 ) ) [5] => Array ( [name] => HEAT [attrs] => Arr 
ay ( [MIN] => 3 [MAX] => 5 ) ) ) ) ) ) ) ) ) ) )




ктонить знает как этот мрак разшифровать ? нужно дальше значения из массива вывести ..

acsid
Alfa Guru

2469
# Дата: 10 Май 2006 14:48 ° Поправил: acsid


афигеть.. я сделал это .. упорядочил этот мрак:
кому интересно

не буду код показывать так как он не для слабонервных

silen
The Majestic

538
# Дата: 11 Май 2006 01:11


У меня код который берет через xml погоду яндекса ис метеоперм.румогу датьесли кому нить надо...на первый похож

acsid
Alfa Guru

2469
# Дата: 11 Май 2006 01:13


silen
а чем там прогноз лучше ? выложи ,дай глянуть что показвает

silen
The Majestic

538
# Дата: 11 Май 2006 01:23


Выложу как домой приду....там вообщем по полной берется вся инфа о погоде...писал создатель нашей сетки http://proletarka.net dmd Также приаттачил градусник и погоду с метеоперм.ру

acsid
Alfa Guru

2469
# Дата: 11 Май 2006 01:30


silen
ок

silen
The Majestic

538
# Дата: 11 Май 2006 06:18 ° Поправил: silen


$pogodafile="weather.txt"; 

if (time()-filemtime($pogodafile)>10800) // если с момента 
последнего обновления 
// погоды прошло более 3 часов... 
// ...пересоздаем и обновляем файл 
{ 

$dbfile='http://weather.yandex.ru/index.xml'; 
$data=file($dbfile); 
$eof=count($data); 

$filec = fopen($pogodafile,"w"); // открываем файл погоды для 
обновления 
flock($filec, 2); 

for ($i=95;$i<=171;$i++) 
{ fwrite($filec,$data[$i]); } 

fclose($filec); 

} 

include('weather.txt');?>



Все прекрасно работает...щас на альфе проверю...вот здесь смотри http://proletarka.net

acsid
Alfa Guru

2469
# Дата: 11 Май 2006 06:58


silen
ну эт копирование) а я сделал так:
http://cosmo-ee.be/informer.php
вечером ещё добавлю переключатель всех городов мира

acsid
Alfa Guru

2469
# Дата: 12 Май 2006 05:29


http://cosmo-ee.be/?module=weather&file=index

silen
The Majestic

538
# Дата: 13 Май 2006 02:58 ° Поправил: silen


Кинь сюда код плиз...я посмотрю...Кстати на альфе помоему не работает...

acsid
Alfa Guru

2469
# Дата: 13 Май 2006 04:05


Кстати на альфе помоему не работает

ты о чём?
» silen
Кинь сюда код плиз...

только в аське (332 семь 2 семь 6 три три), дам только с условием не распространения

Ваш ответ

Quote  Bold Style  Italic Style  Underlined Style  URL Link  Email Link  Script AutoTab  Preformatted Text  Отменить *Что это?
... Запретить смайлы


Перед отправкой "нелатинского" текста проверьте кодировку броузера!
 » Логин  » Пароль 
 
Powered by miniBB forum software © 2001-2008
Powered by miniBB-gzipper. Original size:35215, gzipped size:9944

Mp3 Download || Мир Спанч боба || Song's Lyrics
eXTReMe Tracker Rambler's Top100 Рейтинг@Mail.ru Форум ТвойWeb [Valid RSS]