фона:Возвращение массива типа не отображает содержимое в PHP
Создание веб-сайта, который отображает курсы валют разных стран по всему миру.
У меня есть функция, которая извлекает скорость и название валюты из документа XML:
function get_rate(SimpleXMLElement $xml, $x) {
$currency['rate'] = $xml->channel->item[$x]->description;
preg_match('/([0-9]+\.[0-9]+)/', $currency['rate'], $matches);
$rate = $matches[0];
$title['rate'] = $xml->channel->item[$x]->title;
$title = explode('/', $title['rate']);
$title = $title[0];
return array(
$currency[0],
$title[1]
);
// echo $rate . ' ' . $title . '<br />';
}
Если удалить обратный массив раскомментируйте эхо Нижеследующее функции работает, как ожидалось, но я Я пытаюсь улучшить этот метод, используя возвращаемый тип. Этот метод возвращает как скорость, так и заголовок, поэтому предположить, что возвращение массива является лучшим решением.
Я использую следующую функцию для выделения результатов из функций, перечисленных выше.
function get_currency_rate($feed) {
$xml = new SimpleXmlElement(file_get_contents($feed));
$rate = get_date($xml);
echo $rate['date'] . '<br />';
$vars = parse_url($feed, PHP_URL_QUERY);
parse_str($vars);
switch ($x) {
case 15:
get_rate($xml, 15); //EUR 15
echo get_rate($xml, $x);
get_rate($xml, 56); //USD 56
echo get_rate($xml, $x);
break;
case 16:
get_rate($xml, 16); //GBP 16
get_rate($xml, 15); //EUR 15
break;
case 56: default :
get_rate($xml, 15); // EUR 15
get_rate($xml, 56); // USD 56
break;
}
}
Я работаю над case 15
заявления выключателя на данный момент. 2 эхо-вызова в случае 15 показывают Array Array
, что явно свидетельствует о том, что я не получаю доступ к переменной массива правильно.
Я пробовал заменить case 15
следующим, что, по моему мнению, было бы более синтаксически правильным, чтобы не было avial. Это также отображает Array Array
, как указано выше.
case 15:
get_rate($xml, 15); //EUR 15
echo get_rate($xml, $currency[0]);
get_rate($xml, 56); //USD 56
echo get_rate($xml, $title[1]);
break;
Является ли проблема, потому что я объявляя различные имена переменных в функции get_rate
?
Почему вы вызываете get_rate() дважды в каждом случае? – vascowhite
@vascowhite Да, это не имеет значения, называя их дважды. – keenProgrammer