PHP - imap_errors() Function
PHP−IMAP functions helps you to access email accounts, IMAP stands for Internet Mail Access Protocol using these functions you can also work with NNTP, POP3 protocols and local mailbox access methods.
The imap_errors() function retrieves all the error messages occurred in the current page and, returns them in the form of an array. Once this function is called the error stack is cleared.
Syntax
imap_errors();
Parameters
This function doesnt accept any parameters.
Return Values
This function returns an array containing the errors occurred in the current page, in case of success and, a Boolean which is FALSE in case of a failure.
PHP Version
This function was first introduced in PHP Version 4 and works in all the later versions.
Example
Following example demonstrates the usage of the imap_alerts() function −
<html>
<body>
<?php
$url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
$id = "tutorialspoint.test@gmail.com";
$pwd = "wrong_password";
$mailbox = imap_open($url, $id, $pwd);
print("<br>");
exit ("Errors: <br>");
if ( $mailbox === false ) {
print(imap_errors());
}else{
print("Connection established....");
}
?>
</body>
</html>
Output
This generates the following output −
Warning: imap_open(): Couldn't open stream {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX in C:\Apache24\htdocs\examples\demo2.html on line 7
Errors:
Notice: Unknown: [AUTHENTICATIONFAILED] Invalid credentials (Failure) (errflg=1) in Unknown on line 0
Notice: Unknown: [AUTHENTICATIONFAILED] Invalid credentials (Failure) (errflg=1) in Unknown on line 0
Notice: Unknown: [AUTHENTICATIONFAILED] Invalid credentials (Failure) (errflg=1) in Unknown on line 0
Notice: Unknown: Too many login failures (errflg=2) in Unknown on line 0
Example
Following is another example of this function −
<html>
<body>
<?php
$url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
$id = "tutorialspoint.test@gmail.com";
$pwd = "cohondob_123";
$mailbox = imap_open($url, $id, $pwd);
print("Connection established....");
print("<br>");
//Creating mailboxes
$newmailbox1 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail1";
$newmailbox2 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail2";
$res = imap_createmailbox($mailbox, imap_utf7_encode($newmailbox1));
$res = imap_createmailbox($mailbox, imap_utf7_encode($newmailbox2));
//Retrieving the contents of mail boxes
print("List of mailboxes: ");
print("<br>");
$list = imap_getmailboxes($mailbox, $url, "*");
print("Errors: <br>");
foreach ($list as $key => $val) {
print_r($val->name);
print("<br>");
print(imap_errors());
}
?>
</body>
</html>
Output
This will generate the following output −
Connection established....
List of mailboxes:
Errors:
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX
Notice: Array to string conversion in C:\Apache24\htdocs\examples\trail.html on line 25
Array{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.changed_mail1
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.changed_mail2
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.de