加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – inet_pton无法正常工作

发布时间:2020-12-13 21:45:14 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试使用 PHP代码中的inet_pton()将IP地址转换为mysql存储的数字字符串,但此函数要么返回任何内容,要么:’ ?i’ 注意:IP地址是标准IPv4(而不是我的本地主机) 我的代码是:echo inet_pton($_ SERVER [‘REMOTE_ADDR’]); 解决方法 inet_pton()的输出
我正在尝试使用 PHP代码中的inet_pton()将IP地址转换为mysql存储的数字字符串,但此函数要么返回任何内容,要么:’ ?i’
注意:IP地址是标准IPv4(而不是我的本地主机)

我的代码是:echo inet_pton($_ SERVER [‘REMOTE_ADDR’]);

解决方法

inet_pton()的输出是二进制字符串 – 在大多数情况下无法打印.你可以试试这个

echo inet_pton("65.66.67.68");

在@YWSW的反馈之后编辑问题是,如何在4字节173,63,155和119中的字符串“173.63.155.19”中拆分IP地址

这可以通过以下方式实现

$ip_bytes=inet_pton($ip_string);

$ip_byte0=ord($ip_bytes[0]);
$ip_byte1=ord($ip_bytes[1]);
$ip_byte2=ord($ip_bytes[2]);
$ip_byte3=ord($ip_bytes[3]);

$ip_byte [0..3]是你需要的4个字节.

请理解,我不认可在DB中存储IP地址为4个整数!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读