現在の位置: ホーム> 最新記事一覧> Bindec関数を使用して、データベース内の文字列として格納されているバイナリデータを小数点以降に変換する方法は?

Bindec関数を使用して、データベース内の文字列として格納されているバイナリデータを小数点以降に変換する方法は?

M66 2025-06-23

実際のアプリケーションでは、データベースからデータを読んでいる場合は、PDOまたはMySQLIと組み合わせて照会し、 Bindec()を使用して処理できます。

 <?php
// データベースに接続します(によるPDO例として)
$dsn = "mysql:host=m66.net;dbname=testdb;charset=utf8mb4";
$username = "dbuser";
$password = "dbpass";

try {
    $pdo = new PDO($dsn, $username, $password);

    $stmt = $pdo->query("SELECT binary_data FROM your_table");
    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        $binaryString = $row['binary_data'];
        $decimalNumber = bindec($binaryString);
        echo "バイナリ: $binaryString 小数に変換します: $decimalNumber\n";
    }

} catch (PDOException $e) {
    echo "データベース接続に失敗しました: " . $e->getMessage();
}
?>

上記のコードでは、 Your_tableテーブルのフィールドバイナリ_dataがバイナリ文字列を保存していると仮定します。 bindec()を介して小数に変換し、その後の処理を実行します。

まとめ

  • bindec()関数は、文字列形式のバイナリデータのみを受け入れます。

  • データベースからバイナリ文字列を読む場合は、フィールドタイプが文字型( Varcharなど)であることを確認してください。

  • bindec()を変換した後の10進数整数は、計算または表示に便利です。

このようにして、文字列に保存されているバイナリデータを10進数に簡単に変換できます。これは、プログラムが処理して使用するのが簡単です。