Столкнулся с проблемой вставки на сайт Информера курса валют.
Проблема была в том, что все предлагаемые варианты информеров не подходили и не вписывались в дизайн, (точнее необходимо было горизонтальный вариант курсов валют).
Решение, точные курсы валют можно узнать на сайте rbc.ru, у них есть сервис export.rbc.ru через который можно экспортировать данные курсов валют.
Реализация:
$';
}
if ($arr[$k][0] == 'EUR') {
$arr[$k][8] = 'ЕВРО';
$arr[$k][9] = '€';
}
if ($arr[$k][0] == 'ISK') $arr[$k][8] = 'Исландских крон';
if ($arr[$k][0] == 'KZT') $arr[$k][8] = 'Казахских тенге';
if ($arr[$k][0] == 'CAD') $arr[$k][8] = 'Канадский доллар';
if ($arr[$k][0] == 'CNY') $arr[$k][8] = 'Китайских юаней Ренминби';
if ($arr[$k][0] == 'TRY') $arr[$k][8] = 'Новая турецкая лира';
if ($arr[$k][0] == 'NOK') $arr[$k][8] = 'Норвежских крон';
if ($arr[$k][0] == 'XDR') $arr[$k][8] = 'СДР';
if ($arr[$k][0] == 'SGD') $arr[$k][8] = 'Сингапурский доллар';
if ($arr[$k][0] == 'UAH') $arr[$k][8] = 'Украинских гривен';
if ($arr[$k][0] == 'GBP') $arr[$k][8] = 'Фунт стерлинг. С. Корол-ва';
if ($arr[$k][0] == 'SEK') $arr[$k][8] = 'Шведских крон';
if ($arr[$k][0] == 'CHF') $arr[$k][8] = 'Швейцарский франк';
if ($arr[$k][0] == 'JPY') $arr[$k][8] = 'Японских иен';
$k++;
}
if (strstr($tmp,'TICKER')) $t = 1;
}
fclose ($fp);
}
return $arr;
}
?>
Переменная $get содержит GET параметры запроса, его можно получить из ссылки после формирования параметров на сайте export.rbc.ru
/free/cb.0/free.fcgi?period=DAILY&tickers=NULL&d1=14&m1=01&y1=2009&d2=14&m2=01&y2=2009&lastdays=0&separator=%2F&data_format=BROWSER&header=1
в данном запросе формируется параметры выдачи курса, для получения ежедневного курса необходимо формировать дату от и до «d1=14&m1=01&y1=2009&d2=14&m2=01&y2=2009»
Потом через socket получаем данные, отбрасываем лишнее и формируем массив со структурой полей
[1] => DATE
[2] => OPEN
[3] => HIGH
[4] => LOW
[5] => CLOSE
[6] => VOL
[7] => WAPRICE
обрабатываем его как нам необходимо, я добавил 8 поле расшифровка «банковских кодов»
Далее необходимо представить этот массив в удобном виде:
'; $out .= ''; foreach ($cur as $key => $val){ $out .= ' '; $out .= ' '; return $out; }else return ''; } ?>'; $out .= ''; $out .= ''.$cur[$key][9].''; $out .= ' '; $out .= ''; $out .= ''.$cur[$key][5].''; $out .= ' '; } $out .= '
Здесь вывод всех данных производится в строку (через таблицу), да конечно реализацию можно было бы оптимизировать, но и так сойдет.
Есть тажке простое решение ифнормера по адресу