現在の位置: ホーム> 最新記事一覧> PHPのbindec()関数を使用してDecbin()を組み合わせて、バイナリと10進数の間の変換を実現する方法は?

PHPのbindec()関数を使用してDecbin()を組み合わせて、バイナリと10進数の間の変換を実現する方法は?

M66 2025-07-08

PHPでは、バイナリと10進数の間の変換を処理するのが非常に便利です。主に、 Bindec()Decbin()の2つの組み込み関数に依存しています。これらの2つの関数は、それぞれバイナリと10進数と小数をバイナリとバイナリに使用します。この記事では、これら2つの機能の使用法と、それらを組み合わせて使用​​してデータの双方向変換を実現する方法を詳細に紹介します。

1。bindec()関数の概要

bindec()関数は、バイナリ数(文字列の形で)を小数点以下に変換するために使用されます。文字01のみを含む文字列パラメーターを受信し、対応する小数整数を返します。

文法:

 int bindec ( string $binary_string )

例:

 <?php
$binary = "1101"; // バイナリ文字列
$decimal = bindec($binary);
echo $decimal; // 出力13
?>

2。decbin()関数の概要

Decbin()関数は、小数整数をバイナリ文字列に変換します。引数として整数を受け取り、整数に対応するバイナリ文字列を返します。

文法:

 string decbin ( int $number )

例:

 <?php
$decimal = 13;
$binary = decbin($decimal);
echo $binary; // 出力1101
?>

3. bindec()とdecbin()を使用して、相互変換の例を実装します

これらの2つの関数を使用してバイナリと小数の間の相互変換を実装する方法を示す完全な例を以下に示します。

 <?php
// 定义一个バイナリ文字列
$binaryStr = "101101";

// バイナリから小数
$decimalNum = bindec($binaryStr);
echo "バイナリ {$binaryStr} 小数に変換します: {$decimalNum}\n";

// 小数转バイナリ
$binaryConverted = decbin($decimalNum);
echo "小数 {$decimalNum} 转换为バイナリ是: {$binaryConverted}\n";
?>

出力結果:

 バイナリ 101101 小数に変換します: 45
小数 45 转换为バイナリ是: 101101

4。アプリケーションシナリオと組み合わせた

  • データストレージと送信:一部のシステムはデータをバイナリ文字列に保存し、計算またはディスプレイのために小数点に変換する必要があります。

  • 番号処理:一部の低レベルの操作またはアルゴリズムでは、バイナリと10進数を頻繁に切り替える必要があります。

  • ユーザー入力:ユーザーはバイナリ形式で番号を入力でき、プログラムロジック処理のために小数に変換する必要があります。

5。追加のヒント

  • bindec()およびdecbin()は正の整数変換のみをサポートし、負の変換には追加の処理が必要です。

  • 入力バイナリ文字列は有効でなければなりません。そうでなければ、 bindec()は0を返します。

  • 長すぎるバイナリ文字列は、結果が整数範囲を超えることを引き起こす可能性があります。GMP拡張を使用して多数を処理することを検討してください。