<?php
class modmcbrHelper
{
function getCBR( $params )
{
//функция XML парсера
function xml_parser_url($cbrURL){
$ch = curl_init($cbrURL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$doc = curl_exec($ch);
curl_close($ch);
// инициализация XML parser
$parser = JFactory::getXMLParser('simple');
if ($parser->loadString($doc)) {
//echo("File loaded...<br />");
if (isset( $parser->document )) {
$document =& $parser->document;
return $document;
}
} else {
JError::raiseError(500, "Error - couldnt load data!");
}
}
//преобразовываем в более менее понятный массив
function xml_normal($cbrURL){
$cbr_pars = xml_parser_url($cbrURL);
$cbr['date'] = $cbr_pars->_attributes['date'];
for ($i=0; $i<17; $i++){
$cbr[$cbr_pars->_children[$i]->_children[1]->_data] = array (
'numcode'=> $cbr_pars->_children[$i]->_children[0]->_data,
'charcode'=> $cbr_pars->_children[$i]->_children[1]->_data,
'nominal'=> $cbr_pars->_children[$i]->_children[2]->_data,
'name'=> $cbr_pars->_children[$i]->_children[3]->_data,
'value'=> str_replace (",", ".", $cbr_pars->_children[$i]->_children[4]->_data)
);
}
return $cbr;
}
//урл для последних торгов и перегон в массив
$cbr_m['url'] = 'http://cbr.ru/scripts/XML_daily.asp';
$cbr = xml_normal($cbr_m['url']);
//ищем дату на 1 день назад от последней выданной нам
$date_1=date('d.m.Y', strtotime($cbr['date'])-86400);
//урл для предпоследних торгов и перегон в массив
$cbr_m['url2'] = 'http://cbr.ru/scripts/XML_daily.asp?date_req='.$date_1;
$cbr2 = xml_normal($cbr_m['url2']);
$text = '<div style="font-size: xx-small;"><table width="130px" cellspacing="0" cellpadding="0" border="0" style="padding-top: 0px;" align="center">';
$text .= '';
//Массив выводимых вылют ( 'AUD', 'GBP', 'BYR', 'DKK', 'USD', 'EUR', 'ISK', 'KZT', 'CAD', 'CNY', 'NOK', 'XDR', 'SGD', 'TRY', 'UAH', 'SEK', 'CHF' )
$name_valutes = array('USD');
foreach($name_valutes as $name_valute) {
$raznica = $cbr[$name_valute]['value']-$cbr2[$name_valute]['value'];
$raz = $raznica;
if ($raznica == 0) $pic='const';
if ($raznica > 0) $pic='up';
if ($raznica < 0) $pic='down';
$text .= '<tr valign="center" ><td><img title="'.$cbr[$name_valute]['name'].' (номинал: '.$cbr[$name_valute]['nominal'].')" src="modules/mod_mcbr/image/flag-'.$name_valute.'.gif"></td>';
$text .= '</td><td>'.$cbr2[$name_valute]['value'].'</td><td>'.$cbr[$name_valute]['value'].'</td><td><img title="'.$raz.'" src="modules/mod_mcbr/image/'.$pic.'.gif"></td></tr>';
}
$text .= '</table></div>';
return $text;
}
} ?>
Вот код информера mcbr.В этом виде он выводит валюты и курсы в один столбец,а я хочу укладывать их в одну строку.Маился час наверное,может кто подскажет что нужно сделать?