PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

php怎么将float转换成int类型

青灯夜游
青灯夜游 原创
2021-02-20 10:32:36 5452浏览

php中将float转换成int类型的方法:1、使用强制类型转换,在要转换的float变量之前加上用括号括起来的目标类型“(int)”即可,例“(int)3.14”;2、使用intval()函数,可以获取变量的整数值。

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

php将float转换成int类型

1、强制类型转换--在要转换的变量之前加上用括号括起来的目标类型

允许转换的PHP数据类型有:

  • (int)、(integer):转换成整形

  • (float)、(double)、(real):转换成浮点型

  • (string):转换成字符串

  • (bool)、(boolean):转换成布尔类型

  • (array):转换成数组

  • (object):转换成对象

示例:将float类型转换成int类型

<?php   
$num1=3.14;   
$num2=(int)$num1;   
var_dump($num1); //输出float(3.14)   
var_dump($num2); //输出int(3)   
?>

输出:

1.png

【推荐学习:《PHP视频教程》】

2、使用intval()函数

<?php   
$num1=123.9;   
$num2=intval($num1); 
var_dump($num1); 
var_dump($num2); 
?>

输出:

2.png

intval() 函数用于获取变量的整数值。

intval() 函数通过使用指定的进制 base 转换(默认是十进制),返回变量 var 的 integer 数值。 intval() 不能用于 object,否则会产生 E_NOTICE 错误并返回 1。

语法:

int intval ( mixed $var [, int $base = 10 ] )

参数说明:

  • $var:要转换成 integer 的数量值。

  • $base:转化所使用的进制。

如果 base 是 0,通过检测 var 的格式来决定使用的进制:

  • 如果字符串包括了 "0x" (或 "0X") 的前缀,使用 16 进制 (hex);否则,

  • 如果字符串以 "0" 开始,使用 8 进制(octal);否则,

  • 将使用 10 进制 (decimal)。

返回值:成功时返回 var 的 integer 值,失败时返回 0。 空的 array 返回 0,非空的 array 返回 1。

扩展知识:


一般这种情况在实际额工作中 涉及到价格会出现意想不到的bug

如果 你非要传一个 float  价格(2位小数)

且做了乘积之后需要转为int(奇怪的需求)

intval(39.80*100) = 3979
intval(round(floatval($value) * 100)) = 3980

更多编程相关知识,请访问:编程视频!!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。