PHP - Função imap_open ()
As funções PHP-IMAP ajudam você a acessar contas de e-mail, IMAP significa IInternet Maflição Acesso Protocol usando essas funções, você também pode trabalhar com NNTP, protocolos POP3 e métodos de acesso à caixa de correio local.
o imap_open() A função aceita três valores de string que representam o nome / URL da caixa de correio, nome de usuário e senha como parâmetros e abre o fluxo para a caixa de correio especificada.
Sintaxe
imap_open ($mailbox, $username, $password [$options, $n_retries, $params);
Parâmetros
Sr. Não | Parâmetro e Descrição |
---|---|
1 | mailbox(Mandatory) Este é um valor de string que representa o nome / URL da caixa de correio. Ele contém o nome do servidor e o caminho da caixa de correio. |
2 | username(Mandatory) Este é um valor de string que representa o nome do usuário. |
3 | password(Mandatory) Este é um valor de string que representa a senha. |
4 | options (Optional) Este é um valor inteiro que representa o parâmetro opcional que pode ser um ou mais dos seguintes -
|
5 | retries (Optional) Este é um valor inteiro que representa o número máximo de tentativas. |
6 | params (Optional) Este é um valor de matriz que representa os parâmetros de conexão. |
Valores Retornados
Esta função retorna um objeto de fluxo IMAP em caso de sucesso e um valor booleano FALSE em caso de falha.
Versão PHP
Esta função foi introduzida pela primeira vez no PHP Versão 4 e funciona em todas as versões posteriores.
Exemplo
A seguir está um programa php tenta estabelecer uma conexão com uma conta particular do Gmail imap_open() -
<html>
<body>
<?php
$url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
$id = "[email protected]";
$pwd = "cohondob_123";
$mailbox = imap_open($url, $id, $pwd);
if($mailbox){
print("Connection established....");
} else {
print("Connection failed");
}
?>
</body>
</html>
Resultado
O programa acima gera a seguinte saída -
Connection established....
Exemplo
A seguir está outro exemplo dessa função: estabelecemos conexão com uma caixa de correio específica e recuperamos o conteúdo da mensagem nela.
<html>
<body>
<?php
//Establishing connection
$url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
$id = "[email protected]";
$pwd = "cohondob_123";
$imap = imap_open($url, $id, $pwd);
print("Connection established...."."<br>");
//Searching emails
$emailData = imap_search($imap, '');
if (! empty($emailData)) {
foreach ($emailData as $msg) {
$msg = imap_fetchbody($imap, $msg, "1");
print(quoted_printable_decode($msg)."<br>");
}
}
//Closing the connection
imap_close($imap);
?>
</body>
</html>
Resultado
O programa acima gera a seguinte saída -
Connection established....
This is a test mail #1.
--0000000000001bf26805af905277 Content-Type: text/plain; charset="UTF-8" test
mail #2 --0000000000001bf26805af905277 Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
test mail #2
--0000000000001bf26805af905277--
test mail #3
test mail #4
Exemplo
A seguir está o exemplo desta função com parâmetros opcionais.
<html>
<body>
<?php
//Establishing the connection
$url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
$id = "[email protected]";
$pwd = "cohondob_123";
//Optional parameters
$options = OP_READONLY;
$retries = 10;
$mailbox = imap_open($url, $id, $pwd, $options, $retries);
if($mailbox){
print("Connection established....");
} else {
print("Connection failed");
}
?>
</body>
</html>
O programa acima gera a seguinte saída -
Connection established....