- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有这个 PHP 代码:
<?php
$float = "1,99";
echo "<p>$float<br>";
$float = floatval($float); // Without this line number_format throws a notice "A non well formed numeric value encountered" / (float) $float leads to the same output
$val = number_format($float, 2,'.', ',');
echo "$float</p>";
?>
为什么返回 1?别这样。
而且:是的, 将 1,99 转换为 1,99 是有意义的 ;-)
谢谢指教...
最佳答案
问题是,PHP 无法将 1,99
中的 ,
识别为小数点分隔符。 float
类型被定义为具有以下 formal definition :
LNUM [0-9]+
DNUM ([0-9]*[\.]{LNUM}) | ({LNUM}[\.][0-9]*)
EXPONENT_DNUM [+-]?(({LNUM} | {DNUM}) [eE][+-]? {LNUM})
这意味着它只接受 .
作为小数点分隔符。这实际上与 number_format
对无效数据类型发出警告的原因相同,因为它无法在内部将 1,99
转换为 float
。
以下应该有效:
$float = "1,99";
echo "<p>$float<br>";
$val = number_format(str_replace(',', '.', $float), 2,'.', ',');
echo "$float</p>";
关于PHP - 小数点后位置的 floatval 削减?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7594631/
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 11 年前。 Improve thi
当处理Lua资源时,我们也应该遵循提倡用于地球资源的3R原则——Reduce, Reuse and Recycle,即削减、重用和回收。 削减是最简单的方式。有很多方法可以避免使用新的对象,例如,
我需要进入 linux 的第三列... 我先用最后| cut -d ""-f 3 但它不起作用,之后我教 char 是一个 TAB 并使用 last |剪切-f 2而且它仍然无法正常工作... 我应该
我有这个 PHP 代码: $float"; $float = floatval($float); // Without this line number_format throws a not
所以我遇到了一个我认为常见的困境。我有一个数据库对象,一个来自文档数据库的常规 JS 对象,然后我想将该对象发送到我的客户端。但有些字段是敏感字段,不能透露给客户。 在 C# 世界中,我只需使用声明性
我是一名优秀的程序员,十分优秀!