【PHP8.x】inet_pton関数の使い方

作成日: 更新日:

inet_pton関数は、IPアドレスの表現形式を変換する関数です。この関数は、人間が読みやすい形式で記述されたIPアドレス文字列(プレゼンテーション形式)を、コンピュータが内部で処理するのに適したバイナリ形式(ネットワークバイトオーダー)に変換します。具体的には、「192.168.1.1」のようなIPv4アドレスや、「2001:0db8::1」のようなIPv6アドレスの文字列を、それぞれ4バイトまたは16バイトのバイナリデータに変換します。

この変換は、IPアドレスをデータベースに格納する際や、ネットワークプロトコルでIPアドレスを扱う際に、データ量を削減し、処理効率を高める目的で利用されます。バイナリ形式でIPアドレスを保存することで、文字列として保存するよりもディスク領域を節約でき、検索や比較処理も高速になるメリットがあります。

inet_pton関数は、引数として変換したいIPアドレス文字列を一つ受け取ります。変換が成功した場合はバイナリ形式のIPアドレス文字列を返し、指定された文字列が有効なIPアドレス形式でない場合はfalseを返します。この戻り値を確認することで、入力されたIPアドレスの形式が正しいかどうかの検証にも活用できます。また、バイナリ形式のIPアドレスを元の文字列形式に戻す必要がある場合は、関連するinet_ntop関数を使用します。

基本的な使い方

構文(syntax)

<?php
$ip_address_string = '192.168.1.1';
$packed_ip_binary = inet_pton($ip_address_string);
?>

引数(parameters)

string $ip

  • string $ip: 変換したいIPアドレスを指定する文字列

戻り値(return)

string|false

IPv4またはIPv6アドレスをバイナリ表現に変換した文字列、または変換に失敗した場合はfalseを返します。

【PHP8.x】inet_pton関数の使い方 | いっしー@Webエンジニア