Gmail'imde 2465 e-posta var, program neden tüm e-postaları indirdikten sonra duramıyor? Tüm kod1 ve kod2 komut satırı modunda çalıştırılır.
code1: Kod1 içinneden tüm e-postaları indirdikten sonra program duramıyor?
<?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";
?>
: İndirme 1.Can
tüm e-postalar.
2. konsolda çıkış 2465 konsolda
3.no over
çıktı.
4. Program duramıyor, sonsuza kadar sürüyor gibi görünüyor.
code2: code2 için
<?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";
?>
: İndirme 1.Can
tüm e-postalar.
2. Konsolda 2465 çıkış.
3. Konsolda over
çıktı.
4. Program tüm e-postaları indirdikten sonra durur.
Kod1 kod1'den daha fazla bir satır echo $email_id.PHP_EOL;
var, diğer kodlar aynı.
Tüm kod1 ve kod2 komut satırı modunda çalıştırılır.
Bunu kim açıklayabilir?
Hiçbir şey yapmadan asılı kaldığını mı söylüyorsunuz? CPU% 100 olmadığı sürece, muhtemelen bazı sistemlerde kilitleniyor,… 'strace' den sonra en son sistemlerin ne olduğunu görün. – bwoebi
** imap_timeout ** ile e-posta almak için ayarları zaman aşımına uğratın - yankınız yanlışlıkla ikinci zaman için bu zaman aşımını yapabilir. – Jehy
Hala hatayı yeniden üretebiliyor musunuz? Eğer öyleyse, hangi php sürümünü kullanıyorsunuz ve betikleri çalıştırırken hangi kabukları kullanıyorsunuz? – cb0