今日工作需要格式化數字顯示目前商品價格,例如2335.32,需要格式化為2,335.32這樣顯示。我寫了一個函數。總覺得這麼簡單的功能,但卻需要30多行程式碼來完成。
具體程式碼如下:
<?php /**** * @author Amos Wang * @param $number * @return mixed */ function numberFormat($number) { if(!is_numeric($number)){ return $number; // 只处理数字 } list($integer,$decimal) = explode('.',$number); $number_temp = ""; // 临时计数 $len = strlen($integer); $sublen = 3; // 每隔几位数加逗号 //处理整数部分 $i=1; while(true){ $pos = $i * $sublen; $join = empty($number_temp) ? "" : ","; // 连接符 $number_temp = substr($integer,(0-$pos),$sublen).$join.$number_temp; if(($pos + $sublen) > $len){ $number_temp = substr($integer,0,($len - $pos)).$join.$number_temp; break; } $i++; } //处理小数部分 if(!empty($decimal)){ $number_temp = !empty($number_temp) ? $number_temp.".".$decimal : "0.".$decimal; } return $number_temp; } $result = numberFormat(1234567.5564); print_r($result); ?> //结果输出1,234,567.5564
更多php相關知識,請造訪php教學!
以上是php用逗號格式化數字的方法(程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!