2016-12-01 36 views
0

我试图将一个4位整数如1999转换为19.99转换4位整数为十进制的钱

我看过像money_format()这样的功能,但这似乎不是我所期待的。这是我写的一个函数,但是必须有预先存在的方法来执行此操作?

function numberToDecimal((int)$num) { 
    if(!preg_match('/^\d{4}$/', $num) return; 
    $parsed = (string)$num; 
    $i  = 0; 
    $ret = $parsed[$i++] . $parsed[$i++] . '.'; 
    $ret .= $parsed[$i++] . $parsed[$i]; 
    return $ret; 
} 

提前感谢您。
请参阅对应答案3v4l的代码工作。

+2

难道'1999/100'够吗? – ShiraNai7

+0

好的,解决问题的技巧是一流的,我正在使用哈哈。有没有预先存在的方法? @ ShiraNai7 – KDOT

+1

预先存在的方法将数字除以100?我认为这是简单的,因为它得到:) – ShiraNai7

回答

1

什么如下:

$money = 1999 ; 
echo number_format(($money /100), 2, '.', ' '); 
// Will output: 19.99 
+0

这节省了一天,我没有考虑三次做分区,直到@ ShiraNai7提到的解决方案。感谢你的回答!我会尽可能标记它。 – KDOT