MMGP logo
Присоединяйтесь к нашему инвестиционному форуму, на котором уже 649,592 пользователей. Чтобы получить доступ ко многим закрытым разделам и начать общение - зарегистрируйтесь прямо сейчас.
Все, что относится к Web-Программированию (PHP, Perl, JavaScript, MySQL, XML и т.д.)
Первый пост Опции темы
Старый 29.06.2011, 15:59
#1
Любитель
 
Пол: Мужской
Адрес: Киев
Инвестирую в: Свой бизнес
Регистрация: 15.05.2007
Сообщений: 796
Благодарностей: 87
Помогите с информером курсов валют

Есть вот такой вот скрипт:
<?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 ("https://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. не могу разобраться, как сделать, чтобы он выводил только определенные курсы валют, а не весь массив!

Помогите пожалуйста!
OrlandO вне форума
Старый 29.06.2011, 16:39
#2
Интересующийся
 
Пол: Мужской
Инвестирую в: Стартапы
Регистрация: 12.06.2011
Сообщений: 16
Благодарностей: 2
Re: Помогите с информером курсов валют

Для начала правильней будет не так:
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. Если будет нужен программер - обращайся
voleks вне форума
Сказали спасибо:
OrlandO (29.06.2011)
Старый 29.06.2011, 18:50
#3
Любитель
 
Пол: Мужской
Адрес: Киев
Инвестирую в: Свой бизнес
Регистрация: 15.05.2007
Сообщений: 796
Благодарностей: 87
Автор темы Re: Помогите с информером курсов валют

Спасибо огромное, обящательно обращусь, если вдруг появятся вопросы по серьезнее!
OrlandO вне форума
Сказали спасибо:
voleks (29.06.2011)
Войдите, чтобы оставить комментарий.
Быстрый переход
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Реально ли зарабатывать на разнице курсов? Kromlex Вопросы от новичков 51 26.01.2017 17:23
Парнерки по продаже обучающих курсов silent237 Список проблемных/неактивных/закрытых программ 5 05.11.2010 03:58