Usando IMAP () no PHP para obter e-mails recentes não lidos contam

Estou tentando não. de e-mails recentes não lidos de uma conta do Gmail. Para isso, instalei o IMAP no meu sistema Ubuntu e tentei algumas funções do iMAP do PHP. Aqui está o que eu tentei até agora.

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

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

Agora estou declarando todas as minhas tentativas. NB - Tentei cada tentativa enviando novos emails para o email de teste id

Attempt_1: Usando imap_search ()

$recent_emails = imap_search($inbox,'RECENT');
if ($recent_emails)
   echo count($recent_emails);
else
   echo "false return";
imap_close($inbox);

Agora a saída da Tentativa_1 é "retorno falso";

Attempt_2: Usando imap_mailboxmsginfo ()

$check = imap_mailboxmsginfo($inbox);
if ($check)
    echo "Recent: "   . $check->Recent  . "<br />\n" ;
else
    echo "imap_check() failed: " . imap_last_error() . "<br />\n";
imap_close($inbox);

Aqui a saída é Recente: 0 enquanto eu enviei 2 novos e-mails para esse id

Attempt_3: usando imap_status ()

$status = imap_status($inbox, $hostname, SA_ALL);
if ($status)
  echo "Recent:     " . $status->recent      . "<br />\n";
else
  echo "imap_status failed: " . imap_last_error() . "\n";

// Saída Recente: 0

Attempt_4: Usando o uso de imap_search () novamente com o parâmetro NEW

$recent_emails = imap_search($inbox,'NEW');
if ($recent_emails)
   echo count($recent_emails);
else
   echo "false return";
imap_close($inbox);

Saída - retorno falso

Então, onde estou errado? Como posso contar os e-mails não lidos recentes?

questionAnswers(2)

yourAnswerToTheQuestion