string 转换为 int 的性能
如果我有刺痛,
$str = '515';
想将其转换为 int,那么使用
$str = $str * 1;
比使用
$str = intval($str);
哪种性能更好?
If i have sting like
$str = '515';
I want convert it to int, is better use
$str = $str * 1;
than use
$str = intval($str);
which performance is better?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
当你使用
$str = $str * 1
时,$str
会先转换为整数,然后加1,所以多了一步。此外,
$str = intval($str);
比$str = $str * 1;
更具可读性,您也可以使用
$ 进行强制转换str = (int)$str
.When you use
$str = $str * 1
,$str
will first cast into an integer then plus 1, so it is one step more.Besides,
$str = intval($str);
is much more readable than$str = $str * 1;
,You could also just use casting by
$str = (int)$str
.使用
(int)
转换值应该是最快的选项,因为 intval() 调用一个函数(性能开销很小),请参阅 http://wiki.phpbb.com/Best_Practices:PHP#Typecasting 了解更多信息
Casting the value using
(int)
should be the quickest option as intval() invokes a function (which has a small performance overhead)see http://wiki.phpbb.com/Best_Practices:PHP#Typecasting for more information