PHP实现将字符串转换成一个整数的方法(代码示例)
PHP实现将字符串转换成一个整数的方法(代码示例)
如果您是本站会员;我们将为您提供技术支持!!!
本篇文章给大家带来的内容是介绍PHP实现将一个字符串转换成一个整数的方法(代码示例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。
题目描述
将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0。
示例1:
输入 : +2147483647
a33
输出 : 2147483647
思路:
-
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实现(代码示例):
<?php function 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);
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 下载资源请24小时内删除 运营请支持正版 请合法合规运营
2.不建议充值下载-请大家每天签到或发布资源获取下载,请大家一点要摆正自己的思想关 坚决杜绝 知法犯法
3.如果贵公司发现本站有侵权行为,请来联系我们给予指正,本站将即刻删除链接.分享目的仅供大家学习和交流,请不要用于商业用途!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务 请大家谅解!
手游资源站 » PHP实现将字符串转换成一个整数的方法(代码示例)
2.不建议充值下载-请大家每天签到或发布资源获取下载,请大家一点要摆正自己的思想关 坚决杜绝 知法犯法
3.如果贵公司发现本站有侵权行为,请来联系我们给予指正,本站将即刻删除链接.分享目的仅供大家学习和交流,请不要用于商业用途!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务 请大家谅解!
手游资源站 » PHP实现将字符串转换成一个整数的方法(代码示例)