В моем gmail есть 2465 электронных писем, почему программа не может остановиться после загрузки всех электронных писем? Все код1 и код2 выполняются в режиме командной строки.
code1:
<?php
$mailbox = array(
'mailbox' => '{imap.gmail.com:993/imap/ssl}INBOX',
'username' => '[email protected]',
'password' => 'yyyy'
);
$stream = imap_open($mailbox['mailbox'], $mailbox['username'], $mailbox['password'])
or die('Cannot connect to mailbox: ' . imap_last_error());
$emails = imap_search($stream,"ALL");
$nums=imap_num_msg($stream);
echo $nums;
foreach($emails as $email_id) {
$mime = imap_fetchbody($stream, $email_id, "");
file_put_contents("/tmp/" . "email_{$email_id}.eml", $mime);
}
imap_close($stream);
echo "over";
?>
Для кода1:
1. можете загрузить все электронные письма.
2.output 2465 на консоли
3.no over
на консоли.
4. Программа не может остановиться, она, кажется, работает вечно.
code2:
<?php
$mailbox = array(
'mailbox' => '{imap.gmail.com:993/imap/ssl}INBOX',
'username' => '[email protected]',
'password' => 'yyyy'
);
$stream = imap_open($mailbox['mailbox'], $mailbox['username'], $mailbox['password'])
or die('Cannot connect to mailbox: ' . imap_last_error());
$emails = imap_search($stream,"ALL");
$nums=imap_num_msg($stream);
echo $nums;
foreach($emails as $email_id) {
echo $email_id.PHP_EOL;
$mime = imap_fetchbody($stream, $email_id, "");
file_put_contents("/tmp/" . "email_{$email_id}.eml", $mime);
}
imap_close($stream);
echo "over";
?>
Для кода2:
1. можете загрузить все электронные письма.
2.output 2465 на консоли.
3. over
вывод на консоли.
4. Программа останавливается после загрузки всех писем.
Есть одна строка echo $email_id.PHP_EOL;
в коде2 больше кода1, другие коды одинаковы.
Все код1 и код2 выполняются в режиме командной строки.
Кто может это объяснить?