function convert($num,$base_in,$base_out) { for($num=chr(strlen($num)).$num;ord($num[0])>0;$num[0]=chr(ord($num[0])-1)){ if(ord($num[ord($num[0])])<=ord('9')){ $dec+=$num[ord($num[0])]*pow($base_in,strlen($num)-ord($num[0])-1);} else {$dec+=(10+ord($num[ord($num[0])])-ord('a'))*pow($base_in,strlen($num)-ord($num[0])-1);}} $num=chr(round(log($dec)/log($base_out)-0.5,0)); for ($num.=chr(0);ord($num[1])<=ord($num[0]);$num[1]=chr(ord($num[1])+1)){ $base_in = floor($dec/pow($base_out,(ord($num[0])-ord($num[1])))); $dec-=$base_in*pow($base_out,ord($num[0])-ord($num[1])); if ($base_in<=9){ $num.=$base_in;} else{$num.=chr($base_in+ord('a')-10);}} return substr($num,2); }