to uGain(uGain.org) : url的话还可以通过file()来检查返回的内容判断是否存在,Email就无法有效的检测了。 ---------------------------------------------------------------------检查文件内容的话,如果文件是一个空文件,但是此文件存在,只是没内容而已。这好像行不通了吧。如果获取file_open()函数的错误,也许可以。不用检查内容,只检查打开过程中是否存在错误,这样做不知能不能解决这个问题。至于Email,只能用正则匹配
email就无法有效的检测了。
我再PHP的手册中查不到FILE函数,能够详细说明一下吗?
http://www.php.net/manual/zh/function.file.php
url的话还可以通过file()来检查返回的内容判断是否存在,Email就无法有效的检测了。
---------------------------------------------------------------------检查文件内容的话,如果文件是一个空文件,但是此文件存在,只是没内容而已。这好像行不通了吧。如果获取file_open()函数的错误,也许可以。不用检查内容,只检查打开过程中是否存在错误,这样做不知能不能解决这个问题。至于Email,只能用正则匹配
$res = fopen($url,"r");//或者用is_readable()函数检测文件是否存在并且可读,但是我没试过读取远程文件?>
file()是可以访问远程的。
对于 一个空的文件,会返回一个空的数组;对于 不存在的文件,file()函数会报错,值是空。
要确定邮箱是否存在是比较困难的
发送邮件时,无论邮件地址是否存在,mail()函数都会返回true。
如果要做,要结合本地的邮件服务器,看是否有从目标地址所在域返回无匹配用户的退信或本地邮件服务器返回的无法查找到目标地址所在域的通知(困难在这里)。
而问题是有些邮件服务器是没的退信的,也就是说它会尝试查找用户几次后,直接放弃此邮件,这样的情况是无法判断邮件地址是否存在的。
也有人提出用回执的方法或在邮件中加入确认对方阅读信件的标记的方法,也是要在对方用户在登录邮箱后才能实现的。这些方法都不能有效地判断邮件地址是否真实存在。
麻烦高手去这里看看吧,它可以检查一个邮箱地址是不是可用的,我不知道它是怎么做的!
查询mx纪录,然后用sokect编程,好好研究一下smtp几条命令就知道怎么做了