Rumah > pembangunan bahagian belakang > masalah PHP > PHP如何把科学计数格式转化为数字字符串

PHP如何把科学计数格式转化为数字字符串

醉折花枝作酒筹
Lepaskan: 2023-03-09 17:08:01
ke hadapan
2200 orang telah melayarinya

本篇文章给大家介绍一下PHP把科学计数格式转化为数字字符串的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

PHP如何把科学计数格式转化为数字字符串

科学计数格式转化为字符串

将一个科学计数格式的数:1.2345678987654321e+30 转化为字符串‘123456789876543210000000000000’

首先将变量进行拆分在重组得到结果

实现原理:(1)将1.2345678987654321e+30拆分为1.2345678987654321和+30

                  (2)在用1.2345678987654321乘以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;
   }
}
Salin selepas log masuk

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;
}
Salin selepas log masuk

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 是小数位数,可默认设置为没有
Salin selepas log masuk

总结及建议:一万个人眼里一万个哈利波特!每个结果可以由不同的过程来实现,首先用你自己最顺手的,然后再来优化,其次借鉴能理解又高效规范的方法,比如c,简洁高效。

推荐学习:php视频教程

Atas ialah kandungan terperinci PHP如何把科学计数格式转化为数字字符串. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:csdn.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan