PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのbindec()関数とは?2進数を10進数に変換する方法を解説

PHPのbindec()関数は、2進数で表現された文字列を10進数の数値に変換するための組み込み関数です。ビット演算の結果やフラグ管理など、2進数形式のデータを人間が読みやすい10進数として扱いたい場面で役立ちます。

構文

bindec(bin_str)

パラメータ

  • bin_str − 変換対象となる2進数の文字列(「0」と「1」のみで構成される文字列)

戻り値

bindec()関数は、指定された文字列 bin_str を10進数に変換した値を返します。変換結果が整数型の最大値を超える場合は、浮動小数点数(float)として返される点にも注意してください。

使用例

次の例では、2進数の文字列「1101」をbindec()関数で10進数に変換しています。

<?php
    echo bindec("1101");
?>

出力結果

実行すると、bindec()関数が2進数「1101」を10進数の値に変換して返していることが確認できます。

13

補足:関連する変換関数

PHPにはbindec()以外にも、基数変換を行う便利な関数が用意されています。用途に応じて使い分けると効率的です。

  • decbin() − 10進数を2進数の文字列に変換する(bindec()の逆の処理)

  • octdec() − 8進数の文字列を10進数に変換する

  • hexdec() − 16進数の文字列を10進数に変換する

  • base_convert() − 任意の基数間で数値を変換する

なお、bindec()に「0」「1」以外の文字が含まれる文字列を渡した場合、PHP 7.4以降では警告が発生し、有効な2進数部分のみが変換されます。確実な動作を期待する場合は、事前に入力値の検証を行っておくことをおすすめします。

  1. PHPのbindec()関数とは?使い方とサンプルコードをわかりやすく解説

    bindec()関数の定義と使い方PHPのbindec()関数は、文字列として渡された2進数表記を10進数に変換して返す関数です。文字列内の2進数は、符号なし整数として解釈されます。この関数は通常、10進数の整数(int)を返しますが、変換結果が大きすぎる場合には、サイズの都合上float型を返すことがあります。構文bindec ( string $binary_string ) : numberパラメータNo.パラメータと説明1binary_string2進数表記を含む文字列を指定します。「1」と「0」以外の無効な文字はすべて無視されます。戻り値bindec()関数は、引数として渡された文字

  2. PHPのbindec()関数とは?2進数を10進数に変換する方法を解説

    PHPのbindec()関数は、2進数で表現された文字列を10進数の数値に変換するための組み込み関数です。ビット演算の結果やフラグ管理など、2進数形式のデータを人間が読みやすい10進数として扱いたい場面で役立ちます。 構文 bindec(bin_str) パラメータ bin_str − 変換対象となる2進数の文字列(「0」と「1」のみで構成される文字列) 戻り値 bindec()関数は、指定された文字列 bin_str を10進数に変換した値を返します。変換結果が整数型の最大値を超える場合は、浮動小数点数(float)として返される点にも注意してください。 使用例 次の例では、2進数の文字