• Добро пожаловать на инвестиционный форум!

    Во всем многообразии инвестиций трудно разобраться. MMGP станет вашим надежным помощником и путеводителем в мире инвестиций. Только самые последние тренды, передовые технологии и новые возможности. 400 тысяч пользователей уже выбрали нас. Самые актуальные новости, проверенные стратегии и способы заработка. Сюда люди приходят поделиться своим опытом, найти и обсудить новые перспективы. 16 миллионов сообщений, оставленных нашими пользователями, содержат их бесценный опыт и знания. Присоединяйтесь и вы!

    Впрочем, для начала надо зарегистрироваться!
  • 🐑 Моисей водил бесплатно. А мы платим, хотя тоже планируем работать 40 лет! Принимай участие в партнеской программе MMGP
  • 📝 Знаешь буквы и умеешь их компоновать? Платим. Дорого. Бессрочная акция от MMGP: "ОПЛАТА ЗА СООБЩЕНИЯ"

Помогите с информером курсов валют

OrlandO

Любитель
Регистрация
17.05.2007
Сообщения
752
Реакции
0
Поинты
0.000
Есть вот такой вот скрипт:
<?php

function delteg($string)
{
$keyp=0;
$out="";
for ($i=0; $i<strlen($string); $i++) {
if ($string[$i]=="<"):
$keyp=1;
endif;

if ($keyp==0):
$out.=$string[$i];
endif;

if ($string[$i]==">"):
$keyp=0;
endif;

}
$out = substr($out,0,strlen($out)-1);
return $out;
}

$code = array();
$char3 = array();
$size = array();
$name = array();
$rate = array();
$change = array();

$n = 0;

$handle = fopen ("http://bank-ua.com/export/currrate.xml", "r");
while (!feof ($handle)) {
$buffer = fgets($handle, 4096);
if (strpos($buffer, "code")>0) ($code[$n]=delteg($buffer));
if (strpos($buffer, "char3")>0) ($char3[$n]=delteg($buffer));
if (strpos($buffer, "size")>0) ($size[$n]=delteg($buffer));
if (strpos($buffer, "name")>0) ($name[$n]=delteg($buffer));
if (strpos($buffer, "rate")>0) ($rate[$n]=delteg($buffer));
if (strpos($buffer, "change")>0) :
$change[$n]=delteg($buffer);
$n++;
endif;


}
fclose ($handle);

for ($i=0; $i<$n; $i++) {
echo $code[$i]."-".$char3[$i]." - ".$size[$i]." - ".$name[$i]." - ".$rate[$i]." - ".$change[$i]."<br>";
}
?>

Он выводит курсы валют с сайта bank-ua.com. не могу разобраться, как сделать, чтобы он выводил только определенные курсы валют, а не весь массив!

Помогите пожалуйста!
 

voleks

Интересующийся
Регистрация
13.06.2011
Сообщения
15
Реакции
0
Поинты
0.000
Для начала правильней будет не так:
PHP:
for ($i=0; $i<strlen($string); $i++)
а так:
PHP:
$lenght=strlen($string);
for ($i=0; $i<$lenght; $i++)
т.е. у при каждом проходе цикла ты вызываешь функцию strlen, во втором варианте ты вызываешь ее один раз, а потом уже знаешь длину строчки.

Теперь по поводу вывода, ты же хочешь получать конкретные валюты, к примеру Рубли, Доллары, Евро (верно?:) ), так вот зная коды этих валют (второй столбец в выводимой скриптом табличке), через условия и определяй нужна ли тебе эта валюта.
Короче вот последний цикл подправленный:

PHP:
for ($i=0; $i<$n; $i++) {
  if($char3[$i]=='USD' || $char3[$i]=='EUR' || $char3[$i]=='RUB'){
    echo '<b>'.$char3[$i].'</b> '.$size[$i].' - '.$name[$i].' - '.$rate[$i].' - '.$change[$i].'<br>';
  }
}
Сделал вывод по условию и убрал в выводимой информации цифры перед обозначением валюты.

P.S. Если будет нужен программер - обращайся ;)
 
Сверху Снизу