實際應用中,如果你是從數據庫中讀取數據,可以結合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表中字段binary_data存儲的就是二進製字符串。我們通過bindec()將其轉換成十進制數字,再進行後續處理。
bindec()函數只接受字符串格式的二進制數據。
如果從數據庫中讀取二進製字符串,確保字段類型是字符型(如VARCHAR )。
bindec()轉換後返回的是十進制整數,方便用於計算或顯示。
通過這種方式,你可以輕鬆地將以字符串形式存儲的二進制數據轉換為十進制數字,便於程序的處理和使用。