PHPを使って10進数から16進数へ変換、またはその逆で16進数から10進数へ変換する方法を紹介します。

そもそも16進数とは?

16進数では、「0」〜「9」までの数字と「a」〜「f」のアルファベットを使って数値を表現します。

通常の数え方の10進数では0から9までの10個の数字を使いますが、16進数では0から9までの数字の後に、a(10)からf(15)までのアルファベットが続きます。

16進数の例:
  • 10進数の 0 は 16進数で 00
  • 10進数の 255 は 16進数で ff
  • 10進数の 42 は 16進数で 2a

10進数から16進数へ変換する場合はdechex()関数を使う

10進数から16進数へ変換するには「dechex()」関数を使います。この関数は10進数の整数を引数で指定して、その値を16進数の文字列に変換して返します。

<?php
echo dechex(10) ;
?>

上記のコードの出力結果は「a」となります。

16進数から10進数へ変換する場合はhexdec()関数を使う

逆に、16進数から10進数への変換を行うには「hexdec()」関数を使います。こちらは16進数の文字列を引数で指定して、その値を10進数の整数に変換して返します。

<?php
echo hexdec(a0) ;
?>

上記のコードの出力結果は「160」となります。