ip地址的Ion_Auth格式


Ion_Auth format for ip address

对于用户登录,我使用Ion_Auth插件作为代码点火器。这个库将用户的IP地址存储在mysql VARBINARY字段中。

对于一个90.46.67.92的IP地址,我可以在数据库中看到这样的数据:

  • "5A2E435C"访问与一个小的数据库管理库(管理员)
  • "Z.C'"访问Phpmyadmin

在我的应用程序中访问这个字段,我使用代码点火器活动记录库。我在SO主题中看到使用inet_pton打包IP地址和使用inet_ntop拆包。对于上面的IP地址,inet_ntop由于格式错误而导致失败。

有什么想法吗?

  1. 使用活动记录库发现返回字段的格式?(binary/hex/utf8..)
  2. 打开这个返回字段的包?

IP地址通过bin2hex(inet_pton($ip))保存在db中。使用

检索
$user = $this->ion_auth->user()->row();
 echo inet_ntop($user->ip_address);

格式最近已更改。如果您可以拉下最新的代码(确保备份并恢复您的ion_auth.php配置文件)。

然后更改您的用户。Ip_address数据库字段到varchar(15).

现在IP将被存储为字符串