Я использовал код,
<?php $mbox = imap_open("https://myserver.in", "developer@myserver.in", "123456", OP_HALFOPEN) or die("can't connect: " . imap_last_error()); $list = imap_getmailboxes($mbox, "https://myserver.in", "*"); if (is_array($list)) { foreach ($list as $key => $val) { echo "($key) "; echo imap_utf7_decode($val->name) . ","; echo "'" . $val->delimiter . "',"; echo $val->attributes . "<br />\n"; } } else { echo "imap_getmailboxes failed: " . imap_last_error() . "\n"; } imap_close($mbox); ?>
но он дает ошибку
Warning: imap_open() [function.imap-open]: Couldn't open stream https://myserver.in in /home/myserver/public_html/vforms/mailtest.php on line 2 can't connect: Can't open mailbox https://myserver.in: no such mailbox
Ошибка связана с параметром в функции imap_open (), которую я не могу настроить. поэтому, пожалуйста, помогите. Есть ли какой-либо PHP-класс для извлечения данных из папки «Входящие» и получения сообщений электронной почты, таких как PHPMailer Class.
Вы посмотрели документацию ? Адрес почтового ящика должен быть в определенном формате.
// To connect to an SSL IMAP or POP3 server, add /ssl after the protocol // specification: $mbox = imap_open ("{localhost:993/imap/ssl}INBOX", "user_id", "password");
https
! = imap
Так, наверное, это что-то вроде
imap_open("{myserver.in:143}INBOX",...
Или:
imap_open("{myserver.in:993/imap/ssl}INBOX",...
Это может быть скорее всего из-за расширения openssl
поскольку вы читаете из защищенного протокола https
. Убедитесь, что у вас есть расширение openssl
, openssl
из php.ini.