PHP - Función imap_renamemailbox ()

Las funciones PHP − IMAP le ayudan a acceder a las cuentas de correo electrónico, IMAP significa IInternet Mafligir Aacceso Protocol al utilizar estas funciones también puede trabajar con protocolos NNTP, POP3 y métodos de acceso al buzón local.

los imap_renamemailbox() La función acepta un valor de recurso que representa un flujo IMAP, dos valores de cadena que representan el nombre antiguo y el nuevo nombre del buzón como parámetros y cambia el nombre del buzón dado.

Sintaxis

imap_renamemailbox($imap_stream, $old_mail , $new_mail);

Parámetros

No Señor Descripción de parámetros
1

imap_stream (Mandatory)

Este es un valor de cadena que representa un flujo IMAP, valor de retorno del imap_open() función.

2

old_mail (Mandatory)

Este es un valor de cadena que representa el nombre antiguo del buzón.

3

new_mail(Mandatory)

Este es un valor de cadena que representa el nuevo nombre del buzón.

Valores devueltos

Esta función devuelve un valor booleano que es VERDADERO en caso de éxito y FALSO en caso de falla.

Versión PHP

Esta función se introdujo por primera vez en PHP versión 4 y funciona en todas las versiones posteriores.

Ejemplo

El siguiente ejemplo demuestra el uso de imap_renamemailbox() función -

<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);
         print("Connection established....");
         print("<br>");    
		 
         //Renaming the existing mailbox
         $old_name = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail1";
         $new_name = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.changed_mail1";

         $res = imap_renamemailbox($mailbox, $old_name, $new_name);		 
         if($res){
            print("Name changed");
         } else {
            print("Error occurred");
         }
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
Name changed

Ejemplo

A continuación se muestra otro ejemplo de esta función:

<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);
         print("Connection established....");
         print("<br>");

         //Creating mailboxes
         $newmailbox1 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.my_mail1";
         $newmailbox2 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.my_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, "*");
         foreach ($list as $key => $val) {
            print_r($val->name);
            print("<br>");
         }	 
         //Renaming the existing mailbox
         $new_name = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.changed_mail";
         imap_renamemailbox($mailbox, $newmailbox2, $new_name);
         
         //Retrieving the contents of mail boxes
         print("<br>");
         print("List of mailboxes after deletion: ");
         print("<br>");
         $list = imap_getmailboxes($mailbox, $url, "*");
         foreach ($list as $key => $val) {
            print_r($val->name);
            print("<br>");
         }	 
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
List of mailboxes:
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.my_mail1
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.my_mail2

List of mailboxes after deletion:
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.changed_mail
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.my_mail1