PHP常用的网络查找函数
PHP提供一组函数,用于检查主机名称、IP地址、邮件交换等信息;
$url = parse_url($url):解析URL,以关联数组的形式返回组成部分;
该数组的返回字段:
secheme: http;
user: nobby;
pass: secret;
host: example.com
port: 80;
path: /script.php;
query: variable = value;
fragment: anchor;
$ip = gethostbyname($host):获取主机名的ip地址
getmxrr($emailhost,$mxhostsarr):
返回本主机到访问主机之间的一组邮件交换(ex),并将其装载到$mxhostsarr数组中
简单应用:检查URL和电子邮件地址
<?php
$url = $_REQUEST['url'];
$email = $_REQUEST['email'];
//检查URL的IP地址是否有效
$url = parse_url($url); //解析URL,以关联数组的形式返回组成部分;
$host = $url['host']; //获取url信息数组中的主机名部分
$ip = gethostbyname($host); //获取主机名的ip地址;
if(!$ip ){
echo 'Host for URL does not have valid IP';
exit;
}
echo "Host is at IP $ip <br/>";
//检测邮件发送主机是否有效
$email = explode('@',$email); //将email地址分割,并获取发送主机部分
$emailhost = $email[1];
//返回本主机到访问主机之间的一组邮件交换(ex),并将其装载到$mxhostsarr数组中
//MX列出的是一台知道邮件发送路由的机器,如果DNS中没有MX记录,则意味着邮件没有课发送的目的地
if(! getmxrr($emailhost,$mxhostsarr)){
echo 'Email address is not ar valid host';
exit;
}
echo 'Email is delivered via';
foreach($mxhostsarr as $mx) //打印所有的邮件交换路由地址;
echo "$mx ";
echo "<br/>All submitted details are ok<br/>";
echo "Thank for submitting your site<br/>".
'It will be visited by one of our sraff members soon';
?>