php判断是否为域名或者ip

if(isset($_GET['url'])and$domain<>""){$gurl_yz=explode(".",$_GET['url']);$gurl_yz_num... if(isset($_GET['url']) and $domain<>"")
{

$gurl_yz = explode(".",$_GET['url']);
$gurl_yz_num=count($gurl_yz)-1;
if (is_numeric($gurl_yz[$gurl_yz_num]))
{
echo "<center>域名格式错误 <a href='".$_SERVER["PHP_SELF"]."'>返回</a></center>";
exit();

}
}
这个好像有点作用但是不完美
光汉字没有拦截 ip到给拦截了
展开
 我来答
老夭来了
2015-04-26 · 知道合伙人软件行家
老夭来了
知道合伙人软件行家
采纳数:1806 获赞数:8100
2008年从事软件开发,拥有多年的python,php,linux工作经验,发布过多个python,php的开源项目。

向TA提问 私信TA
展开全部
你这个方法是通过判断域名或者ip被“.”分隔成数组后的最后一个元素是否是数字实现的?
应该是有问题的吧,比如aaa.111这个应该不是合法的ip,你这个就通过了。
我觉得还是使用正则比较好。
更多追问追答
追问
正规的怎么写呢?
追答

不好意思,以为很久不用php了,刚查了下手册,发现有更好的方式了,php现在有个filter_var函数,自己就支持验证是否是域名或者IP。

if(filter_var($ip, FILTER_VALIDATE_IP)) {// 合法IP
}else {// 非法IP
}
if(filter_var($url, FILTER_VALIDATE_URL)) {// 合法URL
}else {// 非法URL
}
Storm代理
2023-07-25 广告
StormProxies是一家提供动态代理服务器服务的企业,旨在帮助用户更好地管理网络访问和安全。以下是一些关于StormProxies的IP动态代理服务的特点:1. 高匿名性:StormProxies的动态代理服务器具有高匿名性,可以有效... 点击进入详情页
本回答由Storm代理提供
zhangc_8866
推荐于2017-09-02 · TA获得超过1277个赞
知道小有建树答主
回答量:2826
采纳率:82%
帮助的人:294万
展开全部
if(filter_var('123.3.3.22', FILTER_VALIDATE_IP)) {
echo 'IP地址';
}else {

echo '不是IP地址';
}
if(filter_var('http://www.njhunuo.cn', FILTER_VALIDATE_URL)) {
echo '合法URL';
}else {
echo '非法URL';
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式