实际应用中,如果你是从数据库中读取数据,可以结合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()转换后返回的是十进制整数,方便用于计算或显示。
通过这种方式,你可以轻松地将以字符串形式存储的二进制数据转换为十进制数字,便于程序的处理和使用。