Отображаемое число с точностью до двух десятичных знаков - PullRequest
0 голосов
/ 10 января 2012

Я хочу отображать число с точностью до 2 десятичных знаков, которое выводится из файла XML с помощью функции curl.Я пробовал функции number_format, printf ('%. 2f', $ number) и sprintf (). Они отображают результат 0,00. Код следующий.

  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, `http://orbisadvisors.redinews.com/tools/XM01?                                                                                                      queryid=QJ33020&fields=Last&fields=Change&fields=Chperc&symbol=BSZ`);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $sp= curl_exec ($ch);
  $sp1=explode(" ",$sp);
  echo "????".$lsp1=$sp1[4];
  printf("%.2f",$lsp1);
  print_r($sp1);
  curl_close ($ch);

В случае использования статического числавместо переменной. Это дает правильный результат.

Спасибо

1 Ответ

0 голосов
/ 10 января 2012

Вы должны использовать такую ​​библиотеку, как SimpleXML для анализа получаемых данных XML, например:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://orbisadvisors.redinews.com/tools/XM01?queryid=QJ33020&fields=Last&fields=Change&fields=Chperc&symbol=BSZ');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$sp= curl_exec ($ch);
curl_close ($ch);    

$xml = simplexml_load_string($sp);
$last = sprintf("+%.2f", $xml->Stock->Last); // 1280.70
...