首頁  >  文章  >  後端開發  >  PHP如何把科學計數格式轉換成數字字串

PHP如何把科學計數格式轉換成數字字串

醉折花枝作酒筹
醉折花枝作酒筹轉載
2021-05-13 17:15:072147瀏覽

這篇文章跟大家介紹一下PHP把科學計數格式轉換成數字字串的方法。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

PHP如何把科學計數格式轉換成數字字串

科學計數格式轉換為字串

將一個科學計數格式的數:1.2345678987654321e 30 轉換為字串'123456789876543210000000##0000' ##首先將變數進行拆分在重組得到結果

實現原理:(1)將1.2345678987654321e 30拆分為1.2345678987654321和30

# 1乘以10的30次方,10的30次方用php函數pow(10,30)來得出。

a.第一種方法,從最普通的想法來

public function sctonum($num){
    if(false !== stripos($num, "e")){
        $a = explode("e",strtolower($num));
        $b = $a[0] * pow(10,$a[1]);
        return $b;
    }else{
        return $num;
   }
}

 b.用循環來得出

public function numToStr($num)
{
	$result = "";
	if (stripos($num, 'e') === false) {
		return $num;
	}
	while ($num > 0) {
		$v = $num - floor($num / 10) * 10;
		$num = floor($num / 10);
		$result = $v . $result;
	}
	return $result;
}

c.全部用php函數來得出

public function sctonum($num, $double = 5){
    if(false !== stripos($num, "e")){
        $a = explode("e",strtolower($num));
        return bcmul($a[0], bcpow(10, $a[1], $double), $double);
    }else{
        return $num;
    }
}
//注$double 是小数位数,可默认设置为没有

總結及建議:一萬個人眼中一萬個哈利波特!每個結果可以由不同的過程來實現,首先用你自己最順手的,然後再來優化,其次借鑒能理解又高效規範的方法,比如c,簡潔高效。

推薦學習:

php影片教學

以上是PHP如何把科學計數格式轉換成數字字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除