所以我被要求作为我的作业的一部分,在 PHP 中将浮点数转换为整数。问题是根据 php.net 没有这样的演员阵容,我自己也找不到问题背后的概念。
鉴于以下内容:
$float = 1.92;
$float += 2;
它只是替换它们,导致 3.92 作为输出。
据我所知,可能的(或更确切地说是允许的)演员如下:
允许演员阵容:
(int), (integer) - cast to integer
(bool), (boolean) - cast to boolean
(float), (double), (real) - cast to float
(string) - cast to string
(array) - cast to array
(object) - cast to object
(unset) - cast to NULL (PHP 5)
他们向我们展示过某种技巧还是任务无效?
答案 0 :(得分:3)
是否要将浮球四舍五入到最接近的整数?在这种情况下:
$float = 1.92;
$float += 2;
echo round($float);
输出4.或直接演员:
$float = 1.92;
$float += 2;
echo (int) $float;
输出3。
答案 1 :(得分:0)
是什么让你认为你不能把浮动转换成int?
php > $float = 1.92;
php > var_dump($float);
float(1.92)
php > $int = 2 + (int)$float;
php > var_dump($int);
int(3)
php > $int2 = (int)(2 + $float);
php > var_dump($int2);
int(3)
答案 2 :(得分:0)
您始终可以将浮点数转换为字符串,就像代码
一样$float = 1.92;
$float +=2;
$int = (int)$float;
echo $int;
PHP始终支持float到整数类型的转换。有关更详细的说明,您可以参考我的PHP type casting帖子。