0

我正在使用 imap_open() 函数来获取 gmail 收件箱消息....我无法登录到 gmail 帐户。我在 XAMPP 服务器上的 mac os 中运行它。

代码 ->

  $hostname = '{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX';
$username = 'xyz@gmail.com';
$password = 'password';
$inbox = imap_open($hostname,$username,$password) or die('Cannot connect to Friggin Server: ' . imap_last_error());

出错

 Severity: Warning

Message: imap_open() [function.imap-open]: Couldn't open stream {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX

Filename: controllers/mail.php

Line Number: 19

我搜索了很多,但没有找到任何有用的答案。我被困在这了。请帮忙 。提前致谢。

4

1 回答 1

0

这里可能有许多错误导致失败的根本原因。在这种情况下, imap_last_error 可能不会返回任何有用的信息。我在 PHP 手册的 imap_open 页面上看到的一个建议是通过imap_errors进行跟踪,因为这将为您提供自请求开始以来发生的所有错误。这似乎是一个常见问题,尤其是对于 gmail,拒绝访问可能不是直接由于 imap(例如,未经验证的帐户)。

试试这个:

$inbox = imap_open($hostname,$username,$password) or die('Cannot connect to Friggin Server: ' . print_r(imap_errors()));

可能会提供有关连接失败原因的更多信息。

看:

http://php.net/manual/en/function.imap-open.php#103762

http://php.net/manual/en/function.imap-errors.php

于 2013-08-15T13:08:05.990 回答