1 /**
2 * @param $num 數字
3 * @param int $decimal 精度
4 * @param int $point_len 分隔位長度
5 * @return string
6 */
7 function format_num($num, $decimal=0, $point_len = 3){
8 $str = '';
9 list($int,$float) = explode('.',$num);
10 $len = strlen($int);
11 $j = 0;$k=0;
12 for($i=0;$i<$len;$i++){
13 $j++;
14 if($j%$point_len==0){
15
16 $str = ",".substr($int,$len-$j,$point_len) . $str;
17 $k++;
18 }
19 }
20 $str = ($len - $point_len*$k == 0) ? trim($str,',') : substr($int,0,$len - $point_len*$k) . $str;
21 //decimal num format
22 if($float && $decimal){
23 $str .= "." . substr($float,0,$decimal);
24 }
25 return $str;
26 }