帮助用PHP阅读gmail消息

时间:2009-06-25 02:43:25

标签: php gmail-pop

我需要阅读来自gmail的电子邮件,但我无法连接到gmail pop3服务器。 谁能在这帮助我?

这里是代码:

$pop3 = new POP3;
$pop3->server = 'pop.gmail.com';
$pop3->user = 'username';
$pop3->passwd = 'password';
$pop3->debug = true;
$pop3->pop3_connect()

结果:

Warning: fsockopen() [function.fsockopen]: unable to connect to pop.gmail.com:110 (Connection timed out) in /public_html/cron/pop3.php on line 64

由于

4 个答案:

答案 0 :(得分:1)

根据此页面(connecting to Gmail using Outlook Express),您必须使用端口995进行POP3访问Gmail,此外,必须启用SSL。

维基百科也states this

  

电子邮件客户端可以使用传输层安全性(TLS)或安全套接字层(SSL)加密POP3流量。使用STLS命令协商TLS / SSL连接。某些客户端和服务器(如Google Gmail)使用不推荐使用的备用端口方法,该方法使用TCP端口995(POP3S)。

答案 1 :(得分:0)

我不确定它是否对您有帮助,但GMAIL有ATOM feed。我写了一个PHP脚本来使用CURL下载Atom Feed,这样我就可以在我的过时手机上检查我的电子邮件,它只支持非常简单的HTML。因此,根据您的要求,下载和处理ATOM源可能比连接到POP服务器更容易。

答案 2 :(得分:0)

我不知道你正在使用什么课 - 但是,例如,使用Daniel Lemos'package如下所示。关键是选择正确的端口(995)和正确的加密方法(对于您正在使用的任何pop3包,TLS设置为true)。例如,您可以使用类似下面的内容来启动连接。不是这个类的架构,或示例代码(很多嵌套的if语句)的忠实粉丝,但它确实起到了作用。

$pop3=new pop3_class();
$apop=0;
$pop3->authentication_mechanism="USER";
$pop3->debug=0;
$pop3->html_debug=1;
$pop3->join_continuation_header_lines=1;
$pop3->hostname = "pop.gmail.com";
$pop3->port = 995; // The port that gmail uses...
$pop3->tls = 1; // This is encryption
$user = "someuser";
$password = "some password";

if( !empty($error=$pop3->Open()) ){
    die( "Something terrible happened..." );
}

$pop3->Login($user,$password,$apop);

答案 3 :(得分:0)

我认为您的电子邮件有两个简单的选项:

  • 像Kibbee这样的Cron原子饲料说。但是,在发送消息和获取消息之间,您会有一点延迟。

  • 使用http://smtp2web.com/将您的电子邮件发布到您的网站,这意味着更短的延迟。因为您的邮件将通过中间人,所以当场隐私不应该是至关重要的。