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 需要掌握的东西 不做浮躁的人
Dec 28 PHP
解析yii数据库的增删查改
Jun 20 PHP
php基础设计模式大全(注册树模式、工厂模式、单列模式)
Aug 31 PHP
Zend Framework教程之资源(Resources)用法实例详解
Mar 14 PHP
Yii2中事务的使用实例代码详解
Sep 07 PHP
PHP laravel中的多对多关系实例详解
Jun 07 PHP
PHP获取文件扩展名的方法实例总结
Jun 10 PHP
解决出现SoapFault (looks like we got no XML document)的问题
Jun 24 PHP
php实现生成带二维码图片并强制下载功能
Feb 24 PHP
php+ajax 文件上传代码实例
Mar 18 PHP
php遍历目录下文件并按修改时间排序操作示例
Jul 12 PHP
laravel validate 设置为中文的例子(验证提示为中文)
Sep 29 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写的serv-u的web申请账号的程序
2006/10/09 PHP
PHP生成Flash动画的实现代码
2010/03/12 PHP
php缩放图片(根据宽高的等比例缩放)实例介绍
2013/06/09 PHP
ThinkPHP在Cli模式下使用模板引擎的方法
2015/09/25 PHP
window.dialogArguments 使用说明
2011/04/11 Javascript
javascript实现Table间隔色以及选择高亮(和动态切换数据)的方法
2015/05/14 Javascript
jQuery fancybox在ie浏览器下无法显示关闭按钮的解决办法
2016/02/19 Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
2016/04/14 Javascript
ionic实现带字的toggle滑动组件
2016/08/27 Javascript
textarea 在浏览器中固定大小和禁止拖动的实现方法
2016/12/03 Javascript
jQuery使用DataTable实现删除数据后重新加载功能
2017/02/27 Javascript
vue组件父与子通信详解(一)
2017/11/07 Javascript
对angularJs中$sce服务安全显示html文本的实例
2018/09/30 Javascript
解决vue打包后刷新页面报错:Unexpected token
2019/08/27 Javascript
vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
2020/08/10 Javascript
解决vue scoped scss 无效的问题
2020/09/04 Javascript
从Python的源码来解析Python下的freeblock
2015/05/11 Python
python爬虫面试宝典(常见问题)
2018/03/02 Python
python使用sqlite3时游标使用方法
2018/03/13 Python
python中强大的format函数实例详解
2018/12/05 Python
Python如何把十进制数转换成ip地址
2020/05/25 Python
DC Shoes官网:美国滑板鞋和服饰品牌
2017/09/03 全球购物
台湾演唱会订票网站:StubHub台湾
2019/06/11 全球购物
印度尼西亚最完整和最大的在线药房网站:Farmaku.com
2019/11/23 全球购物
傲盾软件面试题
2015/08/17 面试题
Shell编程面试题
2012/05/30 面试题
实习心得体会
2014/01/02 职场文书
迎元旦广播稿
2014/02/22 职场文书
《狮子和兔子》教学反思
2014/03/02 职场文书
业务内勤岗位职责
2014/04/30 职场文书
物流管理专业求职信
2014/05/29 职场文书
升国旗演讲稿
2014/09/05 职场文书
乡镇党委书记个人整改措施
2014/09/15 职场文书
2014社区健康教育工作总结
2014/12/16 职场文书
2015年世界无烟日活动方案
2015/05/04 职场文书
检讨书怎么写?
2019/06/21 职场文书