PEAR::Net_IPv4のvalidateIPを使ってドット区切りのIPアドレスかどうかを判別・・・が当てにならない

By | 2014/12/08 8:39 PM

Net_IPv4のVersion 1.3.4にて動作確認しました。

http://pear.php.net/manual/ja/package.networking.net-ipv4.validateip.php

Net_IPv4::validateIP() – 与えられた IP アドレスの書式を検証する

IP アドレスの形式ががドット区切りであるか検証します。
アドレスが有効な場合、true を返し、そうでなければ false を返します。

※2014年12月8日現在、「がが」と誤表記となっていますがそのままコピペしました。

下記のような結果になります。

なぜかint(0)の場合、trueが返ってきます。
「アドレスが有効」と見なされたわけです。

素直に正規表現で判別することに。

結果。

ハマりました。

この記事を書いた人

MoriMori
MoriMori
2007年11月 27歳にしてプログラマーとしての道を志し、某就職支援会社のPHPスクールに通い始める
2007年12月 株式会社パクレゼルヴに紹介予定派遣社員として入社
2008年4月 株式会社パクレゼルヴの正社員となる
2013年4月 株式会社PRECSとして分社後も在籍

70% WEBエンジニア、30% インフラエンジニア