もっと詳しく

説明

数値をある基数から別の基数に変換します。 数値が現在入っているベースはfromであり、変換するベースはtoです。 変換元および変換先の基数は2〜36でなければなりません。10を超える基数の数字は、文字a(10)からz(35)で表されます。 最大32ビットの数値(10進数の2,147,483,647)を変換できます。

構文:

base_convert(string $num, int $from_base, int $to_base): string

PHPが、すべてのベースを他のすべてのベースに変換するための個別の関数を含めることは実用的ではないため、それらは1つの関数base_convert()にグループ化されます。 これには、変換する数値、変換元のベース、および変換元のベースの3つのパラメーターが必要です。 たとえば、次の2行は同じです。

print decbin(16);
print base_convert("16", 10, 2);

後者は、「16を基数10から基数2に変換する」というより冗長な言い方です。 base_convert()を使用する利点は、バイナリを直接16進数に変換できること、または8進数から12進数(基数12)または16進数から2進数(基数20)などのよりクレイジーな組み合わせに変換できることです。

サポートされている最高のベース

base_convert()がサポートする最高の基数は基数36で、0〜9、次にAZを使用します。 36より大きいベースを使用しようとすると、エラーが発生します。

パラメーター

パラメータ 説明
num 変換する数値。 num内の無効な文字は、黙って無視されます。
from_base ベース番号は
ベースに numを変換するベース

戻り値

numはベースto_baseに変換されます。

例1:数値の底を変換します。

$org = "564"; 
$new = base_convert($org, 8, 16); 
echo "$org in octal is the same as $new in hexadecimaln"; 

例2:

$hexadecimal="a37334";
echo base_convert($hexadecimal, 16, 2);

出力:

The post PHP base_convert関数–任意の基数間で数値を変換する–オタク日記 appeared first on Gamingsym Japan.