PHP实现将一个字符串转换成一个整数的方法(代码示例)

PHP实现将一个字符串转换成一个整数的方法(代码示例)

内容导读

收集整理的这篇技术教程文章主要介绍了PHP实现将一个字符串转换成一个整数的方法(代码示例),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1417字,纯文字阅读大概需要3分钟

内容图文

本篇文章给大家带来的内容是介绍PHP实现将一个字符串转换成一个整数的方法(代码示例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

题目描述
将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0。

示例1:

输入 : +2147483647
a33

输出 : 2147483647
0

思路:

1.处理负号

2.处理正号

3.字符串中包含非数字字符的直接返回0

4.'0'字符的ascii码是48

4.遍历字符串,从0位置开始扫描,当前数字字符ascii码减去'0'字符ascii码,就应该是当前位置的整型

算法:

StrToInt(str)

if empty(str) return 0

symbol=1

if str[0]=='+'



 symbol=1; str[0]='0'

if str[0]=='-'



symbol=-1; str[0]='0'

res=0

for i=0;i<str.size;i++



if(str[i]<'0' || str[i]>'9') //包含非数字字符的,直接返回0





res=0 break;



res=res*10+str[i]-'0'
//进位用和ascii相减算出整型数字

res=symbol*res //加上正负号

return res

php实现(代码示例):

<?phpfunction StrToInt($str){



if (empty($str)){return 0;}



 $symbol=1;



if ($str{0}=='+'){







 $symbol=1;







 $str{0}='0';



}




 if ($str[0]=='-'){







$symbol=-1;







 $str{0}='0';



}




 $res=0;



for ($i=0;$i<strlen($str);$i++){







if($str{$i}<'0' || $str{$i}>'9'){ //包含非数字字符的,直接返回0











$res=0;











break;







}








 $res=$res*10+$str{$i}-'0'; //进位用和ascii相减算出整型数字



}




 $res=$symbol*$res; //加上正负号



return $res;}$s="-123";$res=StrToInt($s);var_dump($res);

以上就是PHP实现将一个字符串转换成一个整数的方法(代码示例)的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的PHP实现将一个字符串转换成一个整数的方法(代码示例)全部内容,希望文章能够帮你解决PHP实现将一个字符串转换成一个整数的方法(代码示例)所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com