
- PHP Tutorial
- PHP - Home
- PHP - Introduction
- PHP - Environment Setup
- PHP - Syntax Overview
- PHP - Variable Types
- PHP - Constants
- PHP - Operator Types
- PHP - Decision Making
- PHP - Loop Types
- PHP - Arrays
- PHP - Strings
- PHP - Web Concepts
- PHP - GET & POST
- PHP - File Inclusion
- PHP - Files & I/O
- PHP - Functions
- PHP - Cookies
- PHP - Sessions
- PHP - Sending Emails
- PHP - File Uploading
- PHP - Coding Standard
- Advanced PHP
- PHP - Predefined Variables
- PHP - Regular Expression
- PHP - Error Handling
- PHP - Bugs Debugging
- PHP - Date & Time
- PHP & MySQL
- PHP & AJAX
- PHP & XML
- PHP - Object Oriented
- PHP - For C Developers
- PHP - For PERL Developers
- PHP Form Examples
- PHP - Form Introduction
- PHP - Validation Example
- PHP - Complete Form
- PHP login Examples
- PHP - Login Example
- PHP - Facebook Login
- PHP - Paypal Integration
- PHP - MySQL Login
- PHP AJAX Examples
- PHP - AJAX Search
- PHP - AJAX XML Parser
- PHP - AJAX Auto Complete Search
- PHP - AJAX RSS Feed Example
- PHP XML Example
- PHP - XML Introduction
- PHP - Simple XML
- PHP - Simple XML GET
- PHP - SAX Parser Example
- PHP - DOM Parser Example
- PHP Frame Works
- PHP - Frame Works
- PHP - Core PHP vs Frame Works
- PHP Design Patterns
- PHP - Design Patterns
- PHP Function Reference
- PHP - Built-In Functions
- PHP Useful Resources
- PHP - Questions & Answers
- PHP - Useful Resources
- PHP - Discussion
PHP - imap_expunge() 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.
You can mark the mails/messages of a specific mailbox for deletion using either of the imap_delete(), imap_mail_move(), or imap_setflag_full() functions.
The imap_expunge() function accepts a resource value representing an IMAP stream as a parameter and, removes all the messages marked for deletion.
Syntax
imap_expunge($imap_stream);
Parameters
Sr.No | Parameter & Description |
---|---|
1 |
imap_stream (Mandatory) This is a string value representing an IMAP stream, return value of the imap_open() function. |
Return Values
This function returns a Boolean TRUE.
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_delete() function −
<html> <body> <?php //Establishing connection $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX"; $id = "tutorialspoint.test@gmail.com"; $pwd = "cohondob_123"; $imap = imap_open($url, $id, $pwd); print("Connection established...."."<br>"); //Marking message for deletion $res = imap_delete($imap, 5); if($res){ print("Message marked for deletion"."<br>"); } //Deleting messages $res = imap_expunge($imap); if($res){ print("Message deleted"); } //Closing the connection imap_close($imap); ?> </body> </html>
Output
This will generate the following output −
Connection established.... Message marked for deletion Message deleted
Example
Following is another example of the above function −
<html> <body> <?php //Establishing connection $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX"; $id = "tutorialspoint.test@gmail.com"; $pwd = "cohondob_123"; $imap = imap_open($url, $id, $pwd); print("Connection established...."."<br>"); print("Contents of inbox: "."<br>"); $emailData = imap_search($imap, ''); foreach ($emailData as $msg) { $msg = imap_fetchbody($imap, $msg, "1"); print(quoted_printable_decode($msg)."<br>"); } //Marking message for deletion imap_delete($imap, 5); //Deleting messages imap_expunge($imap); print("Contents of inbox after deletion: "."<br>"); $emailData = imap_search($imap, ''); foreach ($emailData as $msg) { $msg = imap_fetchbody($imap, $msg, "1"); print(quoted_printable_decode($msg)."<br>"); } //Closing the connection imap_close($imap); ?> </body> </html>
Output
This will generate the following output −
Connection established.... Contents of inbox: #sample_mail1 #sample_mail2 #sample_mail3 #sample_mail4 #sample_mail5 Contents of inbox after deletion: #sample_mail1 #sample_mail2 #sample_mail3 #sample_mail4