类型转换与函数在 PHP 中转换变量类型
类型转换和使用函数将变量转换为某种类型有什么区别吗?
Is there any difference between typecasting and using a function to convert a variable to some type?
(float)$var
VS.floatval($var)
如果有,什么时候应该使用其中一个而不是另一个?
If there are, when one of those should be used instead of the other?
推荐答案
结果值没有区别,只是:
There's no difference in the resulting value, just:
(float)
是一种语言特性,速度非常快floatval()
导致函数调用的开销(最小,但仍然......)floatval()
作为函数可以以(float)
不能的方式使用,例如array_map('floatval', $foo)
(float)
is a language feature and very quickfloatval()
incurs the overhead of a function call (minimal, but nonetheless...)floatval()
as a function can be used in ways that(float)
cannot, e.g.array_map('floatval', $foo)
最后一点,我认为是 floatval
存在的主要原因:所以每个转换操作都有一个等价的函数,这在某些情况下很有用.
The last point is, I believe, the main reason for floatval
's existence: so each casting operation has a function equivalent, which can be useful in some circumstances.
相关文章