2

varbinaryPHP関数でIPv6アドレスを保存していますinet_pton($_SERVER['REMOTE_ADDR'])。次のような SQL クエリを実行すると:

SELECT ip_address FROM some_table WHERE id='some_id';

binaryip_address はフォーマットされているため、読み取ることができません。

MySQL バージョン 5.6INET6_NTOA(expr)には、対応する MySQL 関数があり、読み取り可能な形式に戻すことができます。残念ながら、私はその機能を持たない MySQL バージョン 5.5 を使用しています。

PHP に戻って変換を行わずに IPv6 アドレスを読み取る方法はありますか? バイナリ文字列の 16 進数表記は、添付の画像のように Workbench のエディターで簡単に読み取ることができるので、これを行う簡単な方法があるはずだと考えました。

ここに画像の説明を入力

4

1 に答える 1