《PHP應用:PHP自定義多進制的方法》要點:
本文介紹了PHP應用:PHP自定義多進制的方法,希望對您有用。如果有疑問,可以聯系我們。
PHP應用如下所示:
PHP應用
/**
* 自定義多進制,根據設置的多進制字符串獲取十進制對應的多進制
* @param $str 自定義的多進制字符串
* @param $num 十進制數字
* @return $xbin 對應的多進制數字
*/
function xbin($str, $num){
$num = floatval($num);
$x = strlen($str);
$arr = str_split($str);
$digit = fmod($num, $x);
$xbin = isset($arr[$digit]) ? $arr[$digit] : null;
$pre_digit = floor($num / $x);
if($pre_digit >= 1){
$pre_digit = xbin($str, $pre_digit);
return $pre_digit.$xbin;
}
return $xbin;
}
// 測試8進制
$str = '01234567';
$a = xbin($str, 9);
$b = decoct(9);
dump($a); // string(2) "11"
dump($b); // string(2) "11"
// 測試16進制
$str = '0123456789abcdef';
$a = xbin($str, 31);
$b = dechex(31);
dump($a); // string(2) "1f"
dump($b); // string(2) "1f"
// 自定義30進制
$str = '0123456789abcdefghijklmnopqrst';
$a = xbin($str, 59);
dump($a); // string(2) "1t"
// 自定義92進制
$str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`~!@#$%^&*()-=[];\',./{}:"<>?\|';
$a = xbin($str, 183);
dump($a); // string(2) "1|"
PHP應用以上就是小編為大家帶來的PHP自定義多進制的方法全部內容了,希望大家多多支持維易PHP~
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/2883.html