PHPのdecbin()関数とは?10進数を2進数に変換する方法を解説
decbin() 関数は、PHPの組み込み関数の一つで、10進数(decimal)の数値を2進数(binary)の文字列に変換します。コンピュータ内部ではデータが2進数で扱われるため、ビット演算やフラグ管理などを行う際にこの関数が役立ちます。
構文
decbin(num)
パラメータ
num − 2進数に変換したい数値を指定します。整数を渡すのが一般的ですが、数値形式の文字列も指定可能です。
戻り値
decbin() 関数は、指定された10進数の値を2進数で表した文字列を返します。
使用例
次の例では、10進数の「3865」を2進数に変換しています。
<?php
echo decbin("3865");
?>
出力結果
111100011001
別の使用例
続いて、10進数の「99」を変換する例を見てみましょう。
<?php
echo decbin("99");
?>
出力結果
1100011
補足:負の数を扱う場合
負の数を指定した場合、実行環境の整数サイズ(通常は64ビット)における符号なしの2進表現に変換されます。例えば decbin(-5) を64ビット環境で実行すると、「1111111111111111111111111111111111111111111111111111111111111011」という結果が返されます。
関連する関数
進数変換には、以下のような関連関数も用意されています。
- bindec() − 2進数を10進数に変換する
- decoct() − 10進数を8進数に変換する
- dechex() − 10進数を16進数に変換する
- base_convert() − 任意の基数間で数値を変換する
-
PHPのgregoriantojd()関数とは?構文・パラメータ・使用例を解説
PHPのgregoriantojd()関数は、グレゴリオ暦(現在広く使われている暦)の日付をユリウス通日(Julian Day Count)に変換し、その結果としてユリウス日番号を返す関数です。ユリウス通日は、天文学や歴史上の日付計算などで利用される連続した日数表現であり、異なる暦同士の日付比較や計算を簡単に行えるのが特徴です。 注意 − グレゴリオ暦として有効な範囲は、紀元前4714年11月25日から紀元9999年12月31日以降までとなっています。この範囲外の日付を指定すると、正しい結果が得られない場合があります。 構文 GregorianToJD(month, date, year)
-
PHPのfscanf()関数とは?使い方とフォーマット指定子を徹底解説
PHPのfscanf()関数は、オープン中のファイルから入力を読み込み、指定されたフォーマットに従って解析するための関数です。パラメータを2つだけ渡して呼び出した場合、解析結果の値が配列として返されます。基本構文fscanf(file_pointer, format, mixed)パラメータの詳細file_pointer − fopen()関数を使って作成されたファイルシステムポインタリソースを指定します。format − 読み込むデータの形式(フォーマット)を指定します。使用できる主なフォーマット指定子は以下の通りです。%% − パーセント記号(%)そのものを返す%b − 2進数として読み込