首頁 > 後端開發 > PHP問題 > PHP函數運用之怎麼進行進位的轉換

PHP函數運用之怎麼進行進位的轉換

青灯夜游
發布: 2023-03-12 07:30:02
原創
2340 人瀏覽過

在上一篇文章《PHP函數運用之返回某個日期的前一天和後一天》中,我們介紹了利用strtotime() 函數獲取給定日期前一天和後一天日期、前一月和後一月日期、一周和後一周的日期等方法,有興趣的朋友可以學習了解~

#本文的重點是“進制轉換”,介紹二進制數和十進制數的相互轉換、十進制數和十六進制數的相互轉換、十進制數和八進制數的相互轉換。

二進制數與十進制數的相互轉換

#1、二進制數轉十進制數


PHP函數運用之怎麼進行進位的轉換

#可以使用

bindec(二進位字串)

函數,它可把二進制數轉換為十進制數。

<?php
echo bindec("0011") . "<br>";
echo bindec("01") . "<br>";
echo bindec("11000110011") . "<br>";
echo bindec("111");
?>
登入後複製

輸出結果:PHP函數運用之怎麼進行進位的轉換

3
1
1587
7
登入後複製

也可使用base_convert(要轉換的數或字串, 原進位, 要轉的進位) 函數,它可以在任意進位之間進行轉換,只需設定「base_convert(二進位字串, 2, 10)」即可

<?php
echo base_convert("0011",2,10) . "<br>";
echo base_convert("01",2,10) . "<br>";
echo base_convert("11000110011",2,10) . "<br>";
echo base_convert("111",2,10);
?>
登入後複製

輸出結果:

2、十進制數轉二進制數

#可以使用

decbin(十進制值) 函數,它可把十進制數轉換為二進制數。

<?php
echo decbin("3") . "<br>";
echo decbin("1") . "<br>";
echo decbin("1587") . "<br>";
echo decbin("7");
?>
登入後複製

輸出結果:

11
1
11000110011
111
登入後複製

也可使用 base_convert()函數,只要設定「

base_convert(十進位值, 10, 2)PHP函數運用之怎麼進行進位的轉換」即可。

<?php
echo base_convert("3",10,2) . "<br>";
echo base_convert("1",10,2) . "<br>";
echo base_convert("1587",10,2) . "<br>";
echo base_convert("7",10,2);
?>
登入後複製

輸出結果:

#十進位數與八進位數的相互轉換

#1、八進制數轉十進制數

可以使用

octdec(八進位字串)PHP函數運用之怎麼進行進位的轉換 函數,它可將八進制數轉換為十進制數。

<?php
echo octdec("36") . "<br>";
echo octdec("12") . "<br>";
echo octdec("3063") . "<br>";
echo octdec("106");
?>
登入後複製

輸出結果:

30
10
1587
70
登入後複製
也可使用 base_convert()函數,只要設定「base_convert(八進位字串, 8, 10)」即可。

<?php
echo base_convert("36", 8, 10) . "<br>";
echo base_convert("12", 8, 10) . "<br>";
echo base_convert("3063", 8, 10) . "<br>";
echo base_convert("106", 8, 10);
?>
登入後複製

輸出結果:

2、十進制數轉八進制數

可以使用

decoct (十進制值) 函數,它可把十進制數轉換為八進制數。

<?php
echo decoct("30") . "<br>";
echo decoct("10") . "<br>";
echo decoct("1587") . "<br>";
echo decoct("70");
?>
登入後複製

輸出結果:

36
12
3063
106
登入後複製

也可使用 base_convert()函數,只要設定「

base_convert(十進位值, 10, 8)PHP函數運用之怎麼進行進位的轉換」即可。

<?php
echo base_convert("30", 10, 8) . "<br>";
echo base_convert("10", 10, 8) . "<br>";
echo base_convert("1587", 10, 8) . "<br>";
echo base_convert("70", 10, 8);
?>
登入後複製

輸出結果:

#十進位數與十六進位數的相互轉換

1、十六進制數轉十進制數

可以使用

hexdec(十六進位字串)PHP函數運用之怎麼進行進位的轉換 函數,它可把十六進制數轉換為十進制數。

<?php
echo hexdec("1e") . "<br>";
echo hexdec("a") . "<br>";
echo hexdec("11ff") . "<br>";
echo hexdec("cceeff");
?>
登入後複製

輸出結果:

也可使用 base_convert()函數,只要設定「

base_convert(十六進位字串, 16, 10)###」即可。 ###
<?php
echo base_convert("1e", 16, 10) . "<br>";
echo base_convert("a", 16, 10) . "<br>";
echo base_convert("11ff", 16, 10) . "<br>";
echo base_convert("cceeff", 16, 10);
?>
登入後複製
###輸出結果:##################2、十進位數轉十六進位數#########可以使用# ##dechex(十進制值)### 函數,它可把十進制數轉換為十六進制數。 ###
<?php
echo dechex("30") . "<br>";
echo dechex("10") . "<br>";
echo dechex("1587") . "<br>";
echo dechex("70");
?>
登入後複製
###輸出結果:###
1e
a
633
46
登入後複製
###也可使用 base_convert()函數,只要設定「###base_convert(十進位值, 10, 16)###」即可。 ###
<?php
echo base_convert("30", 10, 16) . "<br>";
echo base_convert("10", 10, 16) . "<br>";
echo base_convert("1587", 10, 16) . "<br>";
echo base_convert("70", 10, 16);
?>
登入後複製
###輸出結果:###############好了就說到這裡了,有其他想知道的,可以點擊這個哦。 → →###php影片教學#######

以上是PHP函數運用之怎麼進行進位的轉換的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板