两个大数相加
function strAdd($str1,$str2){ $res = []; if(strlen($str1) > strlen($str2)){ $str2 = str_pad($str2,strlen($str1),'0',STR_PAD_LEFT); $str = $str1; }else{ $str1 = str_pad($str1,strlen($str2),'0',STR_PAD_LEFT); $str = $str2; } //生成一个数组,数组程度为最长数字位数,以避免使用$res[$i-1]运算的时候出现notice $res = array_fill(0,strlen($str), 0); for ($i=strlen($str)-1; $i>=0 ; $i--) { # code... $tmp = $a[$i] + $b[$i]; $res[$i] += $tmp; if($res[$i]>9){ $res[$i] -=10; $res[$i-1] +=1; } } return implode('',$res); }