ホームページ > php教程 > php手册 > 探讨如何实现PHP判断字符串是否为IP

探讨如何实现PHP判断字符串是否为IP

WBOY
リリース: 2016-06-13 11:08:07
オリジナル
956 人が閲覧しました

在一些查询网站和搜索引擎,常常用到判断某字符串是否为标准的IP地址,比如在百度里搜索某IP地址,会显示该IP的信息,而不符合标准的IP地址是不显示IP信息的。这时就要判断该字符串是否为标准的IP了,最常用的方法是用正则表达式判断。

在网上搜了一些判断IP地址的正则,都是过于简单的,有的只是判断IP字段不大于255,其实还有很多需要判断的,比如只能是数字,且不能为负数,还有用“.”分割只有4段等等。

最好我整理了一个自我感觉完美的函数,PHP判断字符串是否为IP的代码如下:

<ol class="dp-xml">
<li class="alt"><span><span>function is_ip($gonten){  </span></span></li>
<li>
<span>$</span><span class="attribute">ip</span><span> = </span><span class="attribute-value">explode</span><span>(”.”,$gonten);  </span>
</li>
<li class="alt">
<span>for($</span><span class="attribute">i</span><span>=</span><span class="attribute-value">0</span><span>;$i</span><span class="tag"><span class="tag-name">count</span><span>($ip);$i++)  </span></span>
</li>
<li><span>{  </span></li>
<li class="alt">
<span>if($ip[$i]</span><span class="tag">></span><span>255){  </span>
</li>
<li><span>return (0);  </span></li>
<li class="alt"><span>}  </span></li>
<li><span>}  </span></li>
<li class="alt"><span>return ereg(”^[0-9]{1,3}.<br>[0-9]{1,3}.[0-9]{1,3}.[0-9]<br>{1,3}$”,$gonten);  </span></li>
<li><span>} </span></li>
</ol>
ログイン後にコピー

$gonten为要查询的字符串,用is_ip($gonten)就可以实现PHP判断字符串是否为IP,返回FALSE和TRUE。


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート