zoukankan      html  css  js  c++  java
  • php-round()四舍六入

      今天被问到了四舍六入的问题,好吧,第一次听说.后来查询之后说是银行家算法用的

    摘自PHP官方文档.http://php.net/manual/zh/function.round.php
    (PHP 4, PHP 5, PHP 7)
    round — 对浮点数进行四舍五入
    
    说明 
    
    float round ( float $val [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP ]] )
    返回将 val 根据指定精度 precision(十进制小数点后数字的数目)进行四舍五入的结果。precision 也可以是负数或零(默认值)。
    
    Note: PHP 默认不能正确处理类似 "12,300.2" 的字符串。见字符串转换为数值。
    参数 
    
    val
    要处理的值
    
    precision
    可选的十进制小数点后数字的数目。
    
    mode
    以下之一: PHP_ROUND_HALF_UP、 PHP_ROUND_HALF_DOWN PHP_ROUND_HALF_EVEN 或 PHP_ROUND_HALF_ODD
    
    返回值 
    
    四舍五入后的值

    round函数可以接受1-3个参数.其中第1个参数为浮点值,第2个参数为保留小数点后的位数,第3个参数为模式.其中第2和第3个参数为可选项.

    Notice:round()函数不可以处理字符串类型,在处理前请转换为数值.

    Notice:第2个参数不填写则默认为0,此时只返回四舍五入后的整数部分.

    <?php
    echo round(9.5, 0, PHP_ROUND_HALF_UP);   // 10  
    echo round(9.5, 0, PHP_ROUND_HALF_DOWN); // 9
    echo round(9.5, 0, PHP_ROUND_HALF_EVEN); // 10
    echo round(9.5, 0, PHP_ROUND_HALF_ODD);  // 9
    
    echo round(8.5, 0, PHP_ROUND_HALF_UP);   // 9
    echo round(8.5, 0, PHP_ROUND_HALF_DOWN); // 8
    echo round(8.5, 0, PHP_ROUND_HALF_EVEN); // 8
    echo round(8.5, 0, PHP_ROUND_HALF_ODD);  // 9
    ?>

    PHP_ROUND_HALF_UP:      该模式将进行四舍六入,遇5进1

    PHP_ROUND_HALF_DOWN:  该模式将进行四舍六入,遇5不舍弃

    PHP_ROUND_HALF_EVEN:    该模式将四舍六入,整数部分为奇数则进1

    PHP_ROUND_HALF_ODD:   该模式将四舍六入,整数部分为偶数则进1

  • 相关阅读:
    IoC~MVC3+EF+Autofac实现松耦合的系统架构
    IoC~高效的Autofac
    Autofac 依赖注入框架 使用
    C# socket编程实践——支持广播的简单socket服务器
    简单理解Socket
    利用html 5 websocket做个山寨版web聊天室(手写C#服务器)
    c# 实现WebSocket
    oracle中clob字段的使用
    查找程序加载的动态库的路径
    wordpress在window下完美实现301重定向的方法
  • 原文地址:https://www.cnblogs.com/redheat/p/7124697.html
Copyright © 2011-2022 走看看