显示最多两位小数点错误

时间:2012-01-09 21:29:27

标签: php xml curl number-formatting

我想通过curl函数显示输出来自xml文件的最多2位小数。我尝试了number_format,printf('%。2f',$ number)和sprintf()functon.these正在显示结果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 :(得分:0)

您应该使用像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