/**
* @param $num 科学计数法字符串
* @param int $double 小数点保留位数 默认10位
* @return string
*/
function sctonum($num, $double = 10){
if(stripos($num, "e") !== false){
$a = explode('e', strtolower($num));
$str = bcmul($a[0], bcpow(10, $a[1], $double), $double);
return rtrim(rtrim($str, '0'), '.'); //去除小数后多余的0
}
return $num;
}
$obj = '{"id":130126199,"str":0.0000852}';
$obj = json_decode($obj, TRUE);
foreach ($obj as $key => $val) {
// $obj[$key] = number_format($val, 0, '', '');
$obj[$key] = $this->sctonum($val);
}
var_dump($obj);
//输出
array(2) {
["id"]=>
int(130126199)
["str"]=>
string(9) "0.0000852"
}