массивы — получение котировок акций онлайн

У меня есть php-файл, в котором я пытаюсь получить данные онлайн / котировки акций, которые я хотел бы напечатать в html-таблице построчно
вот мой код:

{
$url = 'http://download.finance.yahoo.com/d/quotes.csv?
s=^AORD+BHP.AX+BLT.L+AAPL&f=nd1l1';
$data = file_get_contents($url);

echo $data;
}

и вывод:
«ВСЕ ПОВЕСТКИ ДНЯ», «7.09.2017», 5753.80 «BHP BLT FPO», «7.09.2017», 27.33 «BHP BILLITON PLC ORD $ 0.50», «7.09.2017», 1457.50 «Apple Inc. », «9/7/2017», 161,26

то, что я хотел бы иметь что-то вроде этого:

"ALL ORDINARIES","9/7/2017",5753.80
"BHP BLT FPO","9/7/2017",27.33
"BHP BILLITON PLC ORD $0.50","9/7/2017",1457.50
"Apple Inc.","9/7/2017",161.26

я пытался сделать:

echo $data[1];

но результат таков:
«А»

каким должен быть мой подход к этому? Спасибо!

0

Решение

$data это строка, а не массив. использование nl2br() преобразовать перевод строки в данных в HTML <br> теги:

echo nl2br($data);

Или напечатайте это в <pre> блок, чтобы указать, что данные отформатированы и не должны быть обернуты браузером.

echo '<pre>' . $data . '</pre>';
0

Другие решения

В настоящее время, $data это строка, которая дает $data[0] == '"'; $data[1] == 'A'; $data[2] == 'L', $data[3] == 'L' ... для всей строки.

Так как вы тянете csv файл, $data = str_getcsv($data) преобразует строку, содержащуюся в $data в массив. Увидеть http://php.net/manual/en/function.str-getcsv.php.

0

По вопросам рекламы [email protected]