Php 转换MySQL字段中的二进制(16)数据
我从一个学院“继承”了一个包含十几个字段的MySQL数据库。因为我很少使用数据库,所以我在这里寻求一些建议 有一个名为“IP”的Php 转换MySQL字段中的二进制(16)数据,php,mysql,Php,Mysql,我从一个学院“继承”了一个包含十几个字段的MySQL数据库。因为我很少使用数据库,所以我在这里寻求一些建议 有一个名为“IP”的二进制(16)字段:我想它是用来存储用户IP的。典型的存储值是,例如,00000000000000 FFFF3D024463 使用PHP(如果可能的话,甚至是MySQL),如何将这些数据转换为普通IP地址?您试过了吗 $data = hex2bin($ip); var_dump($data); //not sure how your data was put into
二进制(16)
字段:我想它是用来存储用户IP的。典型的存储值是,例如,00000000000000 FFFF3D024463
使用PHP(如果可能的话,甚至是MySQL),如何将这些数据转换为普通IP地址?您试过了吗
$data = hex2bin($ip);
var_dump($data);
//not sure how your data was put into the column IP
在sql查询中,您也可以尝试
$query = mysql_query("SELECT `HEX(IP)` FROM `database`");
$row = mysql_fetch_array($query);
foreach($row['ip'] as $ip)
{
$data = hex2bin($ip);
echo $data."<br />";
}
$query=mysql\u query(“从“数据库”中选择“十六进制(IP)”;
$row=mysql\u fetch\u数组($query);
foreach($ip'行作为$ip)
{
$data=hex2bin($ip);
echo$数据。“
”;
}
//未测试的代码
已解决:我必须使用MySQL函数(
INET6\u NTOA
)转换该数字。hex2bin返回bool(false)此页面有帮助吗?老实说,我会将该列从binary改为varchar,并将ip地址存储为string。尝试bin2hex()代码>我不能更改数据库,我只能检索值