如何在PHP中拆分浮点数?

Tem*_*lar 2 php math numbers

假设我们有12.054,我想把它分成三个变量,比如$whole_number=12 $numerator=54$denominator=1000.你可以帮帮我吗?

Ste*_*rig 5

一个简单的方法 - 不是很学术,但它适用于PHP ;-):

$float        = 12.054;
$parts        = explode('.', (string)$float);
$whole_number = $parts[0];
$numerator    = trim($parts[1], '0');
$denominator  = pow(10, strlen(rtrim($parts[1], '0')));
Run Code Online (Sandbox Code Playgroud)

可能还需要做一些工作来确保边缘情况也能起作用(尾随0s,根本没有小数部分等).