php应用
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
随机推荐
- Java排序算法——堆排序
堆排序 package sort; public class Heap_Sort { public static void main(String[] args) { // TODO 自动生成的方法存 ...
- Android 知识梳理
说明:本篇博客只是一个知识整理,因为网上对于Android的知识介绍足够多,因此我不再写相关文章(主要是因为我写的不如人家好),所以所有文章均来自网络,不贴原文章,只提供连接,因此本文旨在减少你对相关 ...
- MFC中CString.Format的详细用法
本文转载自:http://blog.csdn.net/wangkaishou/article/details/5846152,感谢网友 Technorati 标签: CString For ...
- [转]CentOS虚拟机如何设置共享文件夹,并在Windows下映射网络驱动器?
CentOS虚拟机如何设置共享文件夹,并在Windows下映射网络驱动器? 转自这里 一.为什么要这么做? 最近在做Linux下的软件开发,但又想使用Windows下的编程工具“Source Insi ...
- 【转】Redis集群搭建与简单使用
介绍安装环境与版本 用两台虚拟机模拟6个节点,一台机器3个节点,创建出3 master.3 salve 环境. redis 采用 redis-3.2.4 版本. 两台虚拟机都是 CentOS ,一台 ...
- 使用pycharm,追求最优的代码。
1.最近追求的是代码0警告,没有任何提示. 怎么追求这样的目标,不需要再去单独使用pylint和flake8这些玩意,只需要看pycharm右边编辑区的竖向滚动条的黄色就可以了. 2. 比较糟糕的就是 ...
- python concurrent.futures包使用,捕获异常
concurrent.futures的ThreadPoolExecutor类暴露的api很好用,threading模块抹油提供官方的线程池.和另外一个第三方threadpool包相比,这个可以非阻塞的 ...
- Oracle如何实现跨库查询
实现结果:在一个数据库中某个用户下编写一个存储过程,在存储过程中使用DBLINK连接另一个数据库,从此数据库中的一个用户下取数,然后插入当前的数据库中的一个表中. 二. 实现方法步骤: 1. 创建存储 ...
- 7 -- Spring的基本用法 -- 8... 抽象Bean与子Bean;Bean继承与Java继承的区别;容器中的工厂Bean;获得Bean本身的id;强制初始化Bean
7.8 深入理解容器中的Bean 7.8.1 抽象Bean与子Bean 把多个<bean.../>配置中相同的信息提取出来,集中成配置模版------这个配置模版并不是真正的Bean,因此 ...
- 给button添加边框和圆角
button是我们经常用到的控件,我把它的属性罗列一下: UIButton *Button = [[UIButton alloc] initWithFrame:CGRectMake(, , , )]; ...