PHP實現將字元串轉換成一個整數的方法(代碼示例)
PHP實現將字元串轉換成一個整數的方法(代碼示例)
如果您是本站會員;我們將為您提供技術支持!!!
本篇文章給大家帶來的內容是介紹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碼,就應該是當前位置的整型
演算法:
1 |
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實現(代碼示例):
1 |
<?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. 帶 [親測] 說明源碼已經被站長親測過!
2. 下載後的源碼請在24小時內刪除,僅供學慣用途!
3. 分享目的僅供大家學習和交流,請不要用於商業用途!
4. 本站資源售價只是贊助,收取費用僅維持本站的日常運營所需!
5. 本站所有資源來源於站長上傳和網路,如有侵權請郵件聯繫站長!
6. 沒帶 [親測] 代表站長時間緊促,站長會保持每天更新 [親測] 源碼 !
7. 盜版ripro用戶購買ripro美化無擔保,若設置不成功/不生效我們不支持退款!
8. 本站提供的源碼、模板、插件等等其他資源,都不包含技術服務請大家諒解!
9. 如果你也有好源碼或者教程,可以到審核區發布,分享有金幣獎勵和額外收入!
10.如果您購買了某個產品,而我們還沒來得及更新,請聯繫站長或留言催更,謝謝理解 !
GG資源網 » PHP實現將字元串轉換成一個整數的方法(代碼示例)
1. 帶 [親測] 說明源碼已經被站長親測過!
2. 下載後的源碼請在24小時內刪除,僅供學慣用途!
3. 分享目的僅供大家學習和交流,請不要用於商業用途!
4. 本站資源售價只是贊助,收取費用僅維持本站的日常運營所需!
5. 本站所有資源來源於站長上傳和網路,如有侵權請郵件聯繫站長!
6. 沒帶 [親測] 代表站長時間緊促,站長會保持每天更新 [親測] 源碼 !
7. 盜版ripro用戶購買ripro美化無擔保,若設置不成功/不生效我們不支持退款!
8. 本站提供的源碼、模板、插件等等其他資源,都不包含技術服務請大家諒解!
9. 如果你也有好源碼或者教程,可以到審核區發布,分享有金幣獎勵和額外收入!
10.如果您購買了某個產品,而我們還沒來得及更新,請聯繫站長或留言催更,謝謝理解 !
GG資源網 » PHP實現將字元串轉換成一個整數的方法(代碼示例)