php float不四舍五入截取浮点型字符串方法总结


Posted in PHP onOctober 28, 2013

php中截取浮点型大致有下面几种方法:

1、 float round ( float $val [, int $precision ] ) 返回将 val 根据指定精度 precision (十进制小数点后数字的数目)进行四舍五入的结果。precision 也可以是负数或零(默认值)。

    echo round(4.3)  //4

2、 string sprintf ( string $format [, mixed $args [, mixed $... ]] ) 返回格式化数据的字符串

$a=12.338938438; 
echo sprintf("%.5f",$a) //结果:12.33894  $a=12.3312356; 
echo sprintf("%.5f",$a);//12.33124 
echo sprintf("%f",$a);//331236  默认小数点后6位

3、 string number_format ( float $number , int $decimals , string $dec_point , string $thousands_sep )
$number = 1234.5678; $english_format_number = number_format($number, 2, '.', ''); 
echo  $english_format_number ; // 1234.57

以上这些都自动做了四舍五入,有时候需求不需要四舍五入呢,怎么办,没有想到好办法,谁知道可以告诉一声。

自己写了个麻烦点的函数,记录下

function getFloatValue($f,$len) 
{ 
  $tmpInt=intval($f);   $tmpDecimal=$f-$tmpInt; 
  $str="$tmpDecimal"; 
  $subStr=strstr($str,'.'); 
  if(strlen($subStr)<$len+1) 
 { 
  $repeatCount=$len+1-strlen($subStr); 
  $str=$str."".str_repeat("0",$repeatCount); 
 } 
  return    $tmpInt."".substr($str,1,1+$len); 
} 
echo getFloatValue(12.99,4) //12.9900 
echo getFloatValue(12.9232555553239,4) //12.9232
PHP 相关文章推荐
PHP 中的一些经验积累
Oct 09 PHP
dedecms采集中可以过滤多行代码的正则表达式
Mar 17 PHP
发款php蜘蛛统计插件只要有mysql就可用
Oct 12 PHP
php抓取页面的几种方法详解
Jun 17 PHP
zf框架的zend_cache缓存使用方法(zend框架)
Mar 14 PHP
php实现俄罗斯乘法实例
Mar 07 PHP
PHP编程开发怎么提高编程效率 提高PHP编程技术
Nov 09 PHP
分享php邮件管理器源码
Jan 06 PHP
如何解决PHP使用mysql_query查询超大结果集超内存问题
Mar 14 PHP
PHP用函数嵌入网站访问量计数器
Oct 27 PHP
PHP快速排序算法实现的原理及代码详解
Apr 03 PHP
ThinkPHP框架整合微信支付之刷卡模式图文详解
Apr 10 PHP
析构函数与php的垃圾回收机制详解
Oct 28 #PHP
web server使用php生成web页面的三种方法总结
Oct 28 #PHP
php加密解密函数authcode的用法详细解析
Oct 28 #PHP
php 模拟post_验证页面的返回状态(实例讲解)
Oct 28 #PHP
php操作mysqli(示例代码)
Oct 28 #PHP
php session_start()出错原因分析及解决方法
Oct 28 #PHP
php 强制下载文件实现代码
Oct 28 #PHP
You might like
PHP 分页原理分析,大家可以看看
2009/12/21 PHP
分享下php5类中三种数据类型的区别
2015/01/26 PHP
php实现TCP端口检测的方法
2015/04/01 PHP
php实现购物车功能(上)
2020/07/23 PHP
smarty中改进truncate使其支持中文的方法
2016/05/30 PHP
mysqli扩展无法在PHP7下升级问题的解决
2019/09/10 PHP
javascript 表单规则集合对象
2009/07/21 Javascript
javascript当onmousedown、onmouseup、onclick同时应用于同一个标签节点Element
2010/01/05 Javascript
flexigrid 类似ext grid的JS表格代码
2010/07/17 Javascript
javascript判断非数字的简单例子
2013/07/18 Javascript
兼容主流浏览器的jQuery+CSS 实现遮罩层的简单代码
2014/10/14 Javascript
jQuery+html5实现div弹出层并遮罩背景
2015/04/15 Javascript
JavaScript生成SQL查询表单的方法
2015/08/13 Javascript
极简主义法编写JavaScript类
2017/11/02 Javascript
浅谈webpack组织模块的原理
2018/03/10 Javascript
layui框架与SSM前后台交互的方法
2019/09/12 Javascript
vue源码中的检测方法的实现
2019/09/26 Javascript
[03:37]2014DOTA2国际邀请赛 主赛事第一日胜者组TOPPLAY
2014/07/19 DOTA
[02:17]DOTA2亚洲邀请赛 RAVE战队出场宣传片
2015/02/07 DOTA
Python统计列表中的重复项出现的次数的方法
2014/08/18 Python
python sort、sorted高级排序技巧
2014/11/21 Python
Python中尝试多线程编程的一个简明例子
2015/04/07 Python
python框架django基础指南
2016/09/08 Python
OpenCV2从摄像头获取帧并写入视频文件的方法
2018/08/03 Python
Python subprocess库的使用详解
2018/10/26 Python
一文了解Python并发编程的工程实现方法
2019/05/31 Python
500行Python代码打造刷脸考勤系统
2019/06/03 Python
在Pycharm中调试Django项目程序的操作方法
2019/07/17 Python
python numpy数组复制使用实例解析
2020/01/10 Python
Python如何实现定时器功能
2020/05/28 Python
Python urllib3软件包的使用说明
2020/11/18 Python
Kickers鞋英国官网:男士、女士和儿童鞋
2021/03/08 全球购物
群众路线教育实践活动学习笔记
2014/11/05 职场文书
英文产品推荐信
2015/03/27 职场文书
在酒桌上的敬酒词
2015/08/12 职场文书
清空 Oracle 安装记录并重新安装
2022/04/26 Oracle