随笔 - 317, 文章 - 0, 评论 - 453, 阅读 - 114万
  博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理

PHP 格式化MYSQL返回float类型

Posted on   PHP-张工  阅读(1822)  评论(0编辑  收藏  举报

PHP 中获取mysql的float字段,echo 输出后,小数部分为包含多个0.

可使用 floatval($num) 将0舍去。

如要保留小数位,可使用 number_format($num, 2); 

number_format函数对超过指定位数的值,进行了四舍五入。

如不想四舍五入,而保留所有小数。可使用如下方法:

// 如仅想保留两位小数可用 number_format($num, 2);
echo f('1001.334534', 2) . '<br>'; // 1001.334534
echo f('-1001.000', 2) . '<br>'; // -1001.00
echo f('1001.3', 5) . '<br>'; // 1001.30000
echo f('1001.33') . '<br>'; // 1001.33
echo f('1001.000') . '<br>'; // 1001
 
// 格式化小数,但不四舍五入,如有小数则全保留,无小数则添加0;
function f($num, $v = 0)
{
    $num = floatval($num);
    if ($v > 0)
    {
        $num = '' . $num;
        $arr = explode('.', $num);
        if (count($arr) === 1)
        {
            $num .= '.' . str_repeat('0', $v);
        }
        else
        {
            $v -= strlen($arr[1]);
            if ($v > 0)
                $num .= str_repeat('0', $v);
        }
    }
     
    return $num;
}

 

编辑推荐:
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
阅读排行:
· DeepSeek智能编程
· 精选4款基于.NET开源、功能强大的通讯调试工具
· [翻译] 为什么 Tracebit 用 C# 开发
· 腾讯ima接入deepseek-r1,借用别人脑子用用成真了~
· DeepSeek崛起:程序员“饭碗”被抢,还是职业进化新起点?
历史上的今天:
2012-02-28 C# 做简易的web版本地程序
点击右上角即可分享
微信分享提示