亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

php語言

利用PHP自定義多進制

時間:2024-06-16 17:46:55 php語言 我要投稿
  • 相關(guān)推薦

利用PHP自定義多進制

  PHP自定義多進制的方法有哪些?就跟隨百分網(wǎng)小編一起去了解下吧,想了解更多相關(guān)信息請持續(xù)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!

  如下所示:

  ?

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  15

  16

  17

  18

  19

  20

  21

  22

  23

  24

  25

  26

  27

  28

  29

  30

  31

  32

  33

  34

  35

  36

  37

  38

  39

  40

  41

  42

  43

  /**

  * 自定義多進制,根據(jù)設(shè)置的多進制字符串獲取十進制對應(yīng)的多進制

  * @param $str 自定義的多進制字符串

  * @param $num 十進制數(shù)字

  * @return $xbin 對應(yīng)的多進制數(shù)字

  */

  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自定義多進制】相關(guān)文章:

PHP如何自定義一個函數(shù)11-17

php自定義擴展名獲取函數(shù)示例03-20

用php自定義函數(shù)之遞歸刪除文件及目錄11-17

PHP項目開發(fā)中最常用的自定義函數(shù)整理03-17

PHP利用header跳轉(zhuǎn)失效的解決方法04-13

如何利用PHP時間轉(zhuǎn)換Unix時間戳代碼11-17

如何啟用Apache的PHP-FPM多實例03-20

八進制和十六進制07-05

PHP二維數(shù)組排序的3種方法和自定義函數(shù)分享11-25