为了账号安全,请及时绑定邮箱和手机立即绑定

如何在php中将数字转换为double

如何在php中将数字转换为double

PHP
拉莫斯之舞 2021-11-05 15:22:54
我正在使用第三方 API。它返回诸如 6,000 之类的值。如您所见,当我将此值保存到数据库中时,由于数字中的逗号而出现错误。我想要做的是将这个包含逗号的数字转换为这样的数字:6000。我试过的:$num = (double)($val); 这不好,因为现在它给了我 6 而不是 6000。我该如何转换?
查看完整描述

3 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

只需使用intval(),https://www.php.net/manual/en/function.intval.php,https://3v4l.org/K49bI。


<?php


echo intval("6000") . "\n";

echo intval("6000.00") . "\n";

echo intval("6,000") . "\n";

echo intval("6,000.00") . "\n";

变成:


6000


6000


6


6



查看完整回答
反对 回复 2021-11-05
?
catspeake

TA贡献1111条经验 获得超0个赞

您可以尝试使用 filter_var()


$num = '6,000';

$real_integer = filter_var($num, FILTER_SANITIZE_NUMBER_INT);

echo $real_integer;


或者,如果您必须解析浮点值,您可以使用NumberFormatter。


$fmt = new NumberFormatter('de_DE', NumberFormatter::DECIMAL);

$num = "1.234.567,891";

$num = $fmt->parse($num);

echo $num;


查看完整回答
反对 回复 2021-11-05
?
森林海

TA贡献2011条经验 获得超2个赞

只需使用 $num = doubleval($val);


/**

* (PHP 4.2.0, PHP 5)<br/>

* Alias of floatval()

* Get float value of a variable

* &Alias; <function>floatval</function>

* @link https://php.net/manual/en/function.doubleval.php

* @param mixed $var May be any scalar type. should not be used on objects, as doing so will emit an E_NOTICE level error and return 1.

* @return float value of the given variable. Empty arrays return 0, non-empty arrays return 1.

*/

function doubleval ($var) {} 


查看完整回答
反对 回复 2021-11-05
  • 3 回答
  • 0 关注
  • 321 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信