1. php判断是否为数字

is_numeric() 这个函数就是检测参数是否为数字,如果是就返回true,如果不是就返回false

is_numeric( 'abcd123' ) or die('提供的参数不是数字');

使用正则表达式匹配,匹配成功就是数字,返回true,匹配不成功就不是数字,返回false

preg_match('/^\d+$/i', 'abcd123') or die('提供的数据不是数字');

 2.递归去除字符串的第一个字符

       /**
* 递归去除字符串的第一个字符,生成"分词"切片
* @param $str 要"分词"拆分的字符串
* @param int $length 支持搜索的"尾号"长度
* @param array $slice 返回的"分词"数组
* @return array
*/
private function _subToSlice($str, $length = 4, $slice = array())
{
$str = strval($str);
$slice[] = $str;
if (strlen($str) > $length) {
$str = substr($str, 1);
return $this->_subToSlice($str, $length, $slice);
}
return $slice;
}

 3. PHP数字价格格式化,保留两位小数

  使用方法为number_format(12,2),如果需要四舍五入,可以使用round函数配合。

语法: string number_format(float number, int [decimals], string [dec_point], string [thousands_sep]);

本函式用来将浮点参数 number 格式化。

若没加参数 decimals 则传回的字串只要整数部份,加了此参数才依参数指定的小数点位数传回。


数 dec_point 表示小数点的表示方式方法,内定值是 ”.”,若需要转换成其它的小数点就可以在这个参数改掉。


数 thousands_sep 为整数部份每三位的分隔符号,内定值是 ”,”。如果没什么特殊要求,又要进行运算的话最好设置为空。

本函式最特别的地方就是参数数目,最少要有一个,也就是欲格式化的字
串;也可以有二个或者四个参数,但不能用三个参数。

值得注意的是指定小数点的位数之后的数字直接舍弃,没有四舍五入的情形

<?php
  echo number_format("1000000");
  echo number_format("1000000",2);
  echo number_format("1000000",2,",",".");
  echo number_format("1000000",2,"*",".");
  echo number_format("1000000",2,".","");
?>

输出:

1,000,000
1,000,000.00
1.000.000,00
1.000.000*00
1000000.00

随机推荐

  1. exportfs命令 NFS客户端问题 FTP介绍 使用vsftpd搭建ftp

    exportfs命令 • 常用选项 • -a 全部挂载或者全部卸载 • -r 重新挂载 • -u 卸载某一个目录 • -v 显示共享目录 • 以下操作在服务端上 • vim /etc/exports ...

  2. SOCKET,TCP/IP,UDP,HTTP,FTP总结

    一.TCP/UDP,SOCKET,HTTP,FTP简析   TCP/IP是个协议组(主要解决数据如何在网络中传输),可分为三个层次:网络层.传输层和应用层: 网络层:IP协议.ICMP协议.ARP协议 ...

  3. python06 深浅拷贝原理

    preface 这里主要说深浅拷贝的原理.首先说说数字与字符串作为内存对象的重用,请看代码: a1=12345 b1=12345 a2=a1 print(id(a1),id(b1),id(a2)) 打 ...

  4. JS_SINA股票接口

    深成指: <script type="text/javascript" src="http://hq.sinajs.cn/list=sz399001" c ...

  5. Lua中用Split函数分割字符串

    function Split(szFullString, szSeparator) local nFindStartIndex = local nSplitIndex = local nSplitAr ...

  6. jsp新建项目

    1.在原有项目的基础上新建一个文件夹 在文件夹内新建一个jsp文件 取名 JSP容器处理JSP文件需要以下三个阶段:翻译——编译——执行 JSP的页面元素包括 静态内容-HTML静态文本 指令-以“& ...

  7. vuejs使用FormData对象,ajax上传图片文件

    我相信很多使用vuejs的朋友,都有采用ajax上传图片的需求,因为前后端分离后,我们希望都能用ajax来解决数据问题,传统的表单提交会导致提交成功后页面跳转,而使用ajax能够无刷新上传图片等文件. ...

  8. vue-resource和vue-axios的简单使用方法

    两者其实差别不大,都是基于es6的Promise对象实现的方法 vue-resource: main.js => import Vue from 'vue'; import VueResourc ...

  9. underscore.js定义模板遇到问题:Uncaught TypeError: Cannot read property 'replace' of undefined

    代码正确缩进位置如下, extend "layout" block 'content',-> div ->'nihao' script id:"Invoice ...

  10. Unity Shader 修改自定义变量的值

    Properties { _R(,)) = 1.0 _ColorTex("ColorTex (RGB)", 2D) = "red" {} } SubShader ...