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
php用逗号格式化数字的更多相关文章
- 在jsp页面中实现格式化数字,百分比,货币
当时的要求是在jsp页面中计算百分比 实现方法 1.引入Jstl的fmt指令 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" ...
- php number_format()保留小数点后几位有效数的函数 千位分组来格式化数字(转)
PHP保留小数点后2位的函数number_format number_format(带小数点的书,小数点后保留的位数) number_format(8.3486,2); //取得小数点后2位有效数/ ...
- C#学习-图解教程(1):格式化数字字符串
学习内容:C#:学习书籍:图解教程(中文第四版). 目录:第二章 C#编程概述 -----> 2.7 从程序中输出文本 -----> 2.7.5格式化数字字符串 using System; ...
- 自定义编写js格式化数字的函数
在处理网页的时候,有时候会需要显示很长的数字,但是当数字的长度比较长的时候,就很难看一个数字到底是多大.这种情况下,一些网站在处理数字的时候,当数字的长度大于3个时,就用逗号把他们分开,这是一个比较常 ...
- Visual Studio 2017中使用正则修改部分内容 如何使用ILAsm与ILDasm修改.Net exe(dll)文件 C#学习-图解教程(1):格式化数字字符串 小程序开发之图片转Base64(C#、.Net) jquery遍历table为每一个单元格取值及赋值 。net加密解密相关方法 .net关于坐标之间一些简单操作
Visual Studio 2017中使用正则修改部分内容 最近在项目中想实现一个小工具,需要根据类的属性<summary>的内容加上相应的[Description]特性,需要实现的效 ...
- C#格式化信息,格式化数字、格式化日期
一.格式化方法: 1.ToString()实例方法 使用当前文化: varname.ToString("C4"); 使用特定文化: varname.ToString("C ...
- java基础之——DecimalFormat格式化数字
DecimalFormat可以用来格式化数字,例如用来设定保留多少位小数.设定数字分隔符等. 说方法之前,先介绍一下其常用的几个模式占位符: 0 一个数字# 一个数字,不包括 0. 小数的分隔符的占位 ...
- js格式化数字和金额
格式化数字,格式化金额: function number_format(number, decimals, dec_point, thousands_sep) { /* * 参数说明: * numbe ...
- Smarty格式化数字为INT数
<? require("setup.php"); define('PAGETITLE','pagtitle'); function insert_top($lid,$sid) ...
随机推荐
- codeforces316E3
Summer Homework CodeForces - 316E3 By the age of three Smart Beaver mastered all arithmetic operatio ...
- Win10+ Clion + 树莓派 + QT进行远程qt程序开发
环境配置 环境配置 Windows上:QT5 + CLion 硬件上:一只可联网.可ssh连接且装有QT5的树莓派 暂时还没想好... 树莓派安装qt sudo apt-get update sudo ...
- 5.使用Ribbon实现客户端侧负载均衡
Ribbon实现客户端侧负载均衡 5.1. Ribbon简介 Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法 ...
- 使用selenium IDE 等一系列需要下载的东西的地址
转载来自:http://blog.csdn.net/u012246342/article/details/53005730 selenium 官网 IDE 等一系列 下载地址:http://www.s ...
- 【Elasticsearch】Docker 安装 Elasticsearch 2.4.4 版本(高版本方式不同)
1. 下载 elasticsearch docker pull docker.elastic.co/elasticsearch/elasticsearch:6.4.3 2.启动 elasticsea ...
- docker mysql容器的安装使用
docker拉取镜像的命令为 docker pull image[:TAG] 如果我们想安装的mysql版本不是最新的版本,则需要填充TAG,如果不带上TAG,则默认安装的为最新版本,虽然可以通过do ...
- rc-form 在 typescript 中的报错处理
1.创建 声明模块 index.d.ts import { Component, ClassicComponentClass, ClassType, ComponentClass, Component ...
- P2602 [ZJOI2010]数字计数&P1239 计数器&P4999 烦人的数学作业
P2602 [ZJOI2010]数字计数 题解 DFS 恶心的数位DP 对于这道题,我们可以一个数字一个数字的求 也就是分别统计区间 [ L , R ] 内部数字 i 出现的次数 (0<=i&l ...
- Android : 供应商原生开发套件 (VNDK)
一.VNDK概述 VNDK(Vendor Native Development Kit)是一组专门用于vendor实现其HAL的lib库,因为自Android 8.0以来,Google引入了Trebl ...
- URL编码和解码
1. 为什么需要编码 当数据不利于处理.存储的时候,就需要对它们进行编码.如对字符进行编码是因为自然语言中的字符不利于计算机处理和存储.对图片信息.视频信息.声音信息进行压缩.优化,将其“格式化”,是 ...