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 相关文章推荐
利用static实现表格的颜色隔行显示的代码
Sep 02 PHP
PHP对字符串的递增运算分析
Aug 08 PHP
php 定界符格式引起的错误
May 24 PHP
PHP链接MySQL的常用扩展函数
Oct 23 PHP
PHP判断一个字符串是否是回文字符串的方法
Mar 23 PHP
Laravel 5框架学习之路由、控制器和视图简介
Apr 07 PHP
PHP正则验证Email的方法
Jun 15 PHP
php获取文件后缀的9种方法
Mar 22 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
Aug 11 PHP
Laravel源码解析之路由的使用和示例详解
Sep 27 PHP
PHP+MySQL实现在线测试答题实例
Jan 02 PHP
php redis setnx分布式锁简单原理解析
Oct 23 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运行时强制显示出错信息的代码
2011/04/20 PHP
php木马webshell扫描器代码
2012/01/25 PHP
解析array splice的移除数组中指定键的值,返回一个新的数组
2013/07/02 PHP
php命名空间学习详解
2014/02/27 PHP
destoon实现商铺管理主页设置增加新菜单的方法
2014/06/26 PHP
Linux下快速搭建php开发环境
2017/03/13 PHP
特殊字符、常规符号及其代码对照表
2006/06/26 Javascript
跟我一起学写jQuery插件开发方法(附完整实例及下载)
2010/04/01 Javascript
node.js 一个简单的页面输出实现代码
2012/03/07 Javascript
基于NodeJS的前后端分离的思考与实践(六)Nginx + Node.js + Java 的软件栈部署实践
2014/09/26 NodeJs
使用Jquery实现每日签到功能
2015/04/03 Javascript
jquery实现select选择框内容左右移动代码分享
2015/11/21 Javascript
无缝滚动的简单实现代码(推荐)
2016/06/07 Javascript
JS调用Android、Ios原生控件
2017/01/06 Javascript
bootstrap table操作技巧分享
2017/02/15 Javascript
node.js+jQuery实现用户登录注册AJAX交互
2017/04/28 jQuery
浅谈 Vue 项目优化的方法
2017/12/16 Javascript
解决vue动态为数据添加新属性遇到的问题
2018/09/18 Javascript
详解JavaScript修改注册表的方法
2020/01/05 Javascript
解决Ant Design Modal内嵌Form表单initialValue值不动态更新问题
2020/10/29 Javascript
解决vue项目中出现Invalid Host header的问题
2020/11/17 Javascript
Python中pygame安装方法图文详解
2015/11/11 Python
Python的网络编程库Gevent的安装及使用技巧
2016/06/24 Python
Python文本处理之按行处理大文件的方法
2018/04/09 Python
python Web开发你要理解的WSGI &amp; uwsgi详解
2018/08/01 Python
Python中的random.uniform()函数教程与实例解析
2019/03/02 Python
Jimmy Choo美国官网:周仰杰鞋子品牌
2018/06/08 全球购物
Anya Hindmarch官网:奢侈设计师手袋及配饰
2018/11/15 全球购物
学习十八大精神心得体会
2013/12/31 职场文书
小学家长会邀请函
2014/01/23 职场文书
中专毕业生个人职业生涯规划
2014/02/19 职场文书
《罗布泊,消逝的仙湖》教学反思
2014/03/01 职场文书
家长给老师的感谢信
2015/01/20 职场文书
2015年党小组工作总结
2015/05/26 职场文书
亮剑观后感500字
2015/06/05 职场文书
使用Oracle命令进行数据库备份与还原
2021/12/06 Oracle