Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Прошу показать как создать php информер
Форумы портала PHP.SU » » XML и его обработка » Прошу показать как создать php информер

Страниц (1): [1]
 

1. Азиз888 - 26 Июля, 2013 - 02:59:42 - перейти к сообщению
Прошу показать как создать php информер, который показывает актуальный курс валют
[url]Национальный Банк Кыргызстана http://www[dot]nbkr[dot]kg/XML/daily[dot]xml [/url]
Вот сам xml
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <CurrencyRates Name="Daily Exchange Rates" Date="26.07.2013">
  3. <Currency ISOCode="USD">
  4. <Nominal>1</Nominal>
  5. <Value>48,8481</Value>
  6. </Currency>
  7. <Currency ISOCode="EUR">
  8. <Nominal>1</Nominal>
  9. <Value>64,4013</Value>
  10. </Currency>
  11. <Currency ISOCode="KZT">
  12. <Nominal>1</Nominal>
  13. <Value>0,3187</Value>
  14. </Currency>
  15. <Currency ISOCode="RUB">
  16. <Nominal>1</Nominal>
  17. <Value>1,5013</Value>
  18. </Currency>
  19. </CurrencyRates>
  20.  

А вот что то такое близкое которое смог найти,
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $currentDate = date('d.m.Y');
  4. $currentTimeShtamp = time();
  5. $currentTime = date('H:i:s');
  6. $curses = unserialize(file_get_contents('curses.arr'));
  7. //если со времени последнего обновление прошло больше 1 часа сек
  8. if ($currentTimeShtamp - $curses['timeshtamp'] >= 1*60*60) {
  9. $valutes = array('USD', 'EUR', 'RUB');
  10. $cursesXML = simplexml_load_file('http://www.nationalbank.kz/rss/rates_all.xml');
  11. //наверно вот это на  http://www.nbkr.kg/XML/daily.xml
  12. $curses = array(
  13. 'date' => $currentDate,
  14. 'time' => $currentTime,
  15. 'timeshtamp' => $currentTimeShtamp,
  16. );
  17. foreach ($cursesXML->channel->item as $item){
  18. if (in_array((string)$item -> title, $valutes)){
  19. $curses['curses'][] = array(
  20. 'name' => (string)$item -> title,
  21. 'date' => (string)$item -> pubDate,
  22. 'value' => (string)$item -> description,
  23. 'index' => (string)$item -> index,
  24. 'quant' => (string)$item -> quant,
  25. );
  26. }
  27. }
  28. $str_curses = serialize($curses);
  29. file_put_contents('curses.arr', $str_curses);
  30. }
  31. ?>
  32.  

всегда учился на практике, на ошибках, тут надо немного отредактировать, для Вас это не так сложно, а я Вам свое искренне спасибо скажу, в любом случае...

 

Powered by ExBB FM 1.0 RC1