什么是更好的选择:
// Option 1:
$intValue = (int) $numericValue;
// Option 2:
$intValue = intval($numericValue);
这两行之间有什么区别,应该在哪种情况下使用?
答案 0 :(得分:22)
intval
比投射到int
(它是一个函数)intval
如果第一个参数是字符串由于第二项非常模糊,客观上我们应该说intval
只是“更糟”。
但是,我个人喜欢阅读intval($var)
比(int)$var
更好(后者可能还需要包装其他parens),因为如果你在循环内转换为int
你肯定是做错了,我使用intval
。
答案 1 :(得分:5)
此处解释的所有行为以及GOTCHAS ......
http://php.net/manual/en/function.intval.php
http://www.php.net/manual/en/language.types.type-juggling.php