php用逗号格式化数字

今日工作需要格式化数字显示当前商品价格,比如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

原文地址:https://www.cnblogs.com/amoswang01/p/11231537.html

时间: 2024-10-14 20:42:49

php用逗号格式化数字的相关文章

关于web开发金额每隔三位逗号格式化js

获得焦点并输入效果,失去焦点效果 js代码: <script> // 格式化数字成0,000.00 function formatNumber(value) { var result = ""; var valueParts = value.split("."); var mostSignificationDigit = valueParts[0].length -1; // 最高有效数字位,默认为个位 var intervalOfDigit = 0;

C#学习-图解教程(1):格式化数字字符串

学习内容:C#:学习书籍:图解教程(中文第四版). 目录:第二章 C#编程概述 -----> 2.7 从程序中输出文本 -----> 2.7.5格式化数字字符串 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _2018_05_04_AM_1520_格式化数字字符串 { class Progr

自定义编写js格式化数字的函数

在处理网页的时候,有时候会需要显示很长的数字,但是当数字的长度比较长的时候,就很难看一个数字到底是多大.这种情况下,一些网站在处理数字的时候,当数字的长度大于3个时,就用逗号把他们分开,这是一个比较常见的方式.但是我查了一下网页上将数字用逗号分开的方法,没有找到比较满意的.于是自己写一一个,在这里分享出来: 处理目标:将超过三位的时,使用逗号将数字分隔开来 1 //////// 格式化数字,个三个数字加一个逗号 2 function geshihua(onum) { 3 ////空字符这返回原来

js格式化数字实例代码

js格式化数字实例代码:数字往往需要进行一定的格式化,一来是便于阅读,二来是实际需要,比如钱数就常常按千位逗号分隔,下面就是一个这样的函数能够是此功能,并且能够保留指定书目的小数,且自动实现四舍五入效果.代码实例如下: function fmoney(s,n) { n=n>0&&n<=20?n:2; s=parseFloat((s+"").replace(/[^\d\.-]/g,"")).toFixed(n)+"";

千位分组来格式化数字函数

1.number_format(number,decimals,decimalpoint,separator)函数通过千位分组来格式化数字.decimals:取得小数点位数decimalpoint:设置小数点符号separator:设置千分位的分隔符*如果遇到已经有小数点的数字,而取得的小数的位数少于原始传入的小数位数,进行四舍五入输出:例如:echo number_format("5000000",2,",",".");    5.000.00

格式化数字字符串

标准数字格式字符串: C or c  货币     "{0:C}" -f 1.23   结果:¥1.23 或 $1.23 D or d 十进制  "{0:D}" -f 2        结果:0002 E or e 科学计数法 "{0:E3}" -f [Math]::Pi 结果:3.142E+000 F or f 固定的点.精确说明小数点后的位数 "{0:F3}" -f [Math]::Pi 结果:3.142 N or n 数

JavaScript获取人类可识别的文件大小转换显示 和 格式化数字类型,保留小数点后几位,非四舍五入

function humanReadableFilesize(size) { var units = new Array("B", "KB", "MB", "GB", "TB", "PB"); var mod = 1024.0; var i = 0; while (size >= mod) { size /= mod; i++; } //return Math.round(size

java基础之——DecimalFormat格式化数字

DecimalFormat可以用来格式化数字,例如用来设定保留多少位小数.设定数字分隔符等. 说方法之前,先介绍一下其常用的几个模式占位符: 0 一个数字# 一个数字,不包括 0. 小数的分隔符的占位符, 分组分隔符的占位符 这里用一个简单的例子来说明其使用方法: public static void main(String[] args) { DecimalFormat df1 = new DecimalFormat("#.#"); DecimalFormat df2 = new D

Smarty格式化数字为INT数

<? require("setup.php"); define('PAGETITLE','pagtitle'); function insert_top($lid,$sid) { echo "insert function"; } $smarty=new SmartyRebuild(); $smarty->assign('name','Linux'); $smarty->assign('title','在线有有要有和蔼是是非非要要'); $smar