【PHP8.x】inet_ntop関数の使い方
作成日: 更新日:
inet_ntop関数は、ネットワークアドレスを人間が読める形式に変換する関数です。この関数は、バイナリ形式で表されたIPアドレス(IPv4またはIPv6)を、私たちが普段目にする「192.168.1.1」や「2001:0db8::1」のようなドット区切りやコロン区切りの文字列形式に変換するために使用されます。例えば、データベースやネットワーク通信から取得したIPアドレスがバイナリデータとして渡された際に、それを画面に表示したり、ログファイルに記録したりする目的で利用されます。
引数には、変換したいバイナリ形式のIPアドレスを指定します。PHPの内部では、このバイナリデータがIPv4アドレスかIPv6アドレスかを自動的に判別し、適切な形式の文字列へと変換します。変換に成功した場合、この関数はIPアドレスの文字列を返します。もし、入力されたバイナリデータが不正な形式であったり、有効なIPアドレスとして解釈できなかったりした場合には、falseを返しますので、関数の戻り値を確認してエラー処理を行うことが重要です。この関数は、ネットワーク関連のプログラミングにおいて、IPアドレスの表現形式を変換する際に役立ちます。
基本的な使い方
構文(syntax)
<?php
// IPアドレスのバイナリ表現を人間が読める形式に変換します。
// 例: '127.0.0.1' をバイナリ形式に変換し、さらに人間が読める形式に戻す
$packedIpAddress = inet_pton('127.0.0.1'); // '127.0.0.1' のバイナリ形式を取得
$readableIpAddress = inet_ntop($packedIpAddress); // バイナリ形式を人間が読める形式に変換
?>
引数(parameters)
string $ip
- string $ip: 変換するIPアドレス(IPv4またはIPv6)を指定する文字列
戻り値(return)
string|false
バイナリ形式のIPv4またはIPv6アドレスを、人間が読みやすいドット区切りまたはコロン区切り表記の文字列に変換します。変換に失敗した場合はfalseを返します。