2014-09-05 101 views
-2

我试试这个主机:如何在PHP IMAP上抓取Gmail?

{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX 
{imap.gmail.com:993/imap/ssl}INBOX 
{imap.gmail.com:993/ssl/novalidate-cert}Current Batch 
{imap.gmail.com:993/ssl/novalidate-cert} 
{imap.gmail.com:995/ssl/serivce=pop3}INBOX 

他们没有工作。什么是Gmail主机或什么IMAP设置?

谢谢!

+0

您是否检查过主机上的端口993未被防火墙关闭? – Max 2015-10-12 17:49:31

回答

1

imap.gmail.com:993/imap/ssl}INBOX应该是正确的。你如何在你的PHP代码中使用它?你只想收到你的电子邮件吗?因为比它看起来是这样的:

/* connect to gmail */ 
$hostname = '{imap.gmail.com:993/imap/ssl}INBOX'; 
$username = '[email protected]'; 
$password = 'password'; 

/* try to connect */ 
$inbox = imap_open($hostname,$username,$password) or die('Cannot connect to Gmail: ' . imap_last_error()); 
+0

我的代码是: <?php $ hostname ='{imap.gmail.com:993/imap/ssl}INBOX'; $ username ='[email protected]'; $ password ='password'; $ inbox = imap_open($ hostname,$ username,$ password)或die('无法连接到Gmail:'。imap_last_error()); $ num_msgs = imap_num_msg($ inbox); imap_close($ inbox); echo $ num_msgs; ?> 答案:连接超时。 – user3744155 2014-09-05 08:54:15

+0

如果您在回显$ num_msgs后关闭连接,会有帮助吗? – Mikelo 2014-09-05 09:01:46

+0

没有达到要求。 PHP退出连接的$ inbox行超时。 不会打印$ num_msgs。 – user3744155 2014-09-05 09:39:14