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 相关文章推荐
VFP与其他应用程序的集成
Oct 09 PHP
PHP array_push 数组函数
Dec 26 PHP
在PHP中设置、使用、删除Cookie的解决方法
May 06 PHP
php输出echo、print、print_r、printf、sprintf、var_dump的区别比较
Jun 21 PHP
PHP计算2点经纬度之间的距离代码
Aug 12 PHP
Yii的CDbCriteria查询条件用法实例
Dec 04 PHP
Thinkphp3.2.3整合phpqrcode生成带logo的二维码
Jul 21 PHP
Thinkphp 空操作、空控制器、命名空间(详解)
May 05 PHP
详解Yii2.0使用AR联表查询实例
Jun 16 PHP
PHP实现找出有序数组中绝对值最小的数算法分析
Aug 07 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
Oct 22 PHP
PHP多维数组排序array详解
Nov 21 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
JAVA/JSP学习系列之七
2006/10/09 PHP
php下一个阿拉伯数字转中文数字的函数
2007/07/16 PHP
PHP中的session永不过期的解决思路及实现方法分享
2011/04/20 PHP
php处理文件的小例子(解压缩,删除目录)
2013/02/03 PHP
php生成N个不重复的随机数实例
2013/11/12 PHP
php使用mysqli向数据库添加数据的方法
2015/03/20 PHP
php获取json数据所有的节点路径
2015/05/17 PHP
基于JQuery制作的产品广告效果
2010/12/08 Javascript
输入框的字数时时统计—关于 onpropertychange 和 oninput 使用
2011/10/21 Javascript
IE6-IE9不支持table.innerHTML的解决方法分享
2012/09/14 Javascript
angularjs指令中的compile与link函数详解
2014/12/06 Javascript
node.js中的http.request方法使用说明
2014/12/14 Javascript
node.js中的fs.realpathSync方法使用说明
2014/12/16 Javascript
原生javascript实现匀速运动动画效果
2016/02/26 Javascript
Bootstrap布局组件教程之Bootstrap下拉菜单
2016/06/12 Javascript
JS 实现导航菜单中的二级下拉菜单的几种方式
2016/10/31 Javascript
微信小程序 PHP后端form表单提交实例详解
2017/01/12 Javascript
js实现漫天星星效果
2017/01/19 Javascript
jQuery图片瀑布流的简单实现代码
2017/03/15 Javascript
最基础的vue.js双向绑定操作
2017/08/23 Javascript
vuex 的简单使用
2018/03/22 Javascript
angular中如何绑定iframe中src的方法
2019/02/01 Javascript
js实现选项卡效果
2020/03/07 Javascript
jQuery 函数实例分析【函数声明、函数表达式、匿名函数等】
2020/05/19 jQuery
JS如何监听div的resize事件详解
2020/12/03 Javascript
Python的Flask框架应用调用Redis队列数据的方法
2016/06/06 Python
Django框架视图函数设计示例
2019/07/29 Python
PyTorch里面的torch.nn.Parameter()详解
2020/01/03 Python
python调用私有属性的方法总结
2020/07/24 Python
通过canvas转换颜色为RGBA格式及性能问题的解决
2019/11/22 HTML / CSS
澳大利亚工具仓库:Tools Warehouse
2018/10/15 全球购物
毕业生求职找工作的自我评价范文
2013/11/27 职场文书
汽车专业人才自我鉴定范文
2013/12/29 职场文书
大学生作弊检讨书
2014/02/19 职场文书
三八节标语
2014/06/27 职场文书
2015年调度员工作总结
2015/04/30 职场文书