imap_delete

(PHP 4, PHP 5, PHP 7, PHP 8)

imap_deleteMarca uma mensagem para exclusão da caixa de correio atual

Descrição

imap_delete(IMAP\Connection $imap, string $message_nums, int $flags = 0): true

Marca mensagens listadas em message_nums para exclusão. Mensagens marcadas para exclusão permanecerão na caixa de correio até que imap_expunge() seja chamada ou imap_close() seja chamada com o parâmetro opcional CL_EXPUNGE.

Parâmetros

imap

Uma instância de IMAP\Connection.

message_nums

Uma string representando uma ou mais mensagens no formato de sequência estilo IMAP4 ("n", "n:m" ou uma combinação destes delimitados por vírgulas).

flags

Pode ser definida a FT_UID que informa à função para tratar o argumento message_nums como um UID.

Valor Retornado

Sempre retorna true.

Erros/Exceções

Lança um ValueError se flags for inválido.

Registro de Alterações

Versão Descrição
8.1.0 O parâmetro imap agora espera uma instância de IMAP\Connection; anteriormente, um resource imap válido era esperado.
8.0.0 Um ValueError agora é lançado em valores de parâmetro flags inválidos. Anteriormente, um aviso era emitido e a função retornava false.

Exemplos

Exemplo #1 Exemplo de imap_delete()

<?php

$mbox
= imap_open("{imap.example.org}INBOX", "username", "password")
or die(
"Não foi possível conectar: " . imap_last_error());

$check = imap_mailboxmsginfo($mbox);
echo
"Mensagens antes da exclusão: " . $check->Nmsgs . "<br />\n";

imap_delete($mbox, 1);

$check = imap_mailboxmsginfo($mbox);
echo
"Mensagens após a exclusão: " . $check->Nmsgs . "<br />\n";

imap_expunge($mbox);

$check = imap_mailboxmsginfo($mbox);
echo
"Mensagens após a expurga: " . $check->Nmsgs . "<br />\n";

imap_close($mbox);
?>

Notas

Nota:

Caixas de correio IMAP podem não ter seus sinalizadores de mensagem salvos entre conexões, então imap_expunge() deve ser chamada durante a mesma conexão para garantir que as mensagens marcadas para exclusão sejam realmente eliminadas.

Veja Também

adicione uma nota

Notas Enviadas por Usuários (em inglês) 1 note

up
7
erational
12 years ago
the function is using the message number (and not the uid !)
$uid = $mail->uid;
$msgno = $mail->msgno;

if you want to use the uid, simply option value
imap_delete($mbox, $uid, FT_UID);
To Top