我想知道将一个值从一种类型转换为另一种类型的最好方法是什么。
我们应该使用哪种变体:
intval($value);settype($value, 'int')(int)$value所有这些都会产生相同的结果。
发布于 2012-08-08 11:07:59
(int)$value与intval($value)和settype($value, 'int')相比,节省了一个函数调用。
而且(int)$value足够干净,所以我更喜欢这种方式。
当你需要使用intval($value)时,就是当你需要使用指定的基数进行转换时(默认值是基数10)。intval接受用于转换的基础的第二个参数。
发布于 2012-08-08 11:48:45
我更喜欢使用
settype($value,getType(intval((int)$value)));发布于 2012-08-08 11:22:57
这里的答案是使用对你来说是“更干净”的东西。速度上的任何差异都将是如此微小,以至于担心它几乎肯定会花费你比你可能节省的时间更多的时间。然而,节省时间的是拥有您将来可以阅读和理解的代码。
在Coding Horror上有一篇很好的文章解释了这一点。
https://stackoverflow.com/questions/11857052
复制相似问题