Webklex/php-imap

PHP-IMAP là trình bao bọc cho giao tiếp IMAP phổ biến mà không cần cài đặt/bật mô-đun php-imap. Giao thức được tích hợp hoàn toàn và do đó hỗ trợ hoạt động IMAP IDLE cũng như quy trình xác thực oAuth "mới". Bạn có thể bật mô-đun

use Webklex\PHPIMAP\ClientManager;
use Webklex\PHPIMAP\Client;

$cm = new ClientManager['path/to/config/imap.php'];

// or use an array of options instead
$cm = new ClientManager[$options = []];

/** @var \Webklex\PHPIMAP\Client $client */
$client = $cm->account['account_identifier'];

// or create a new instance manually        
$client = $cm->make[[
    'host'          => 'somehost.com',
    'port'          => 993,
    'encryption'    => 'ssl',
    'validate_cert' => true,
    'username'      => 'username',
    'password'      => 'password',
    'protocol'      => 'imap'
]];

//Connect to the IMAP Server
$client->connect[];

//Get all Mailboxes
/** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
$folders = $client->getFolders[];

//Loop through every Mailbox
/** @var \Webklex\PHPIMAP\Folder $folder */
foreach[$folders as $folder]{

    //Get all Messages of the current Mailbox $folder
    /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
    $messages = $folder->messages[]->all[]->get[];
    
    /** @var \Webklex\PHPIMAP\Message $message */
    foreach[$messages as $message]{
        echo $message->getSubject[].'
'; echo 'Attachments: '.$message->getAttachments[]->count[].'
'; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
1 để xử lý các trường hợp cạnh, cải thiện chất lượng giải mã tin nhắn và được yêu cầu nếu bạn muốn sử dụng các giao thức cũ như pop3

Wiki. webklex/php-imap/wiki

Trình bao bọc Laravel. webklex/laravel-imap

Mục lục

Cài đặt

1. ] Cài đặt module giải mã

sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful

1. 1. ] [tùy chọn] Cài đặt mô-đun php-imap nếu bạn gặp sự cố mã hóa

sudo apt-get install php*-imap && sudo apache2ctl graceful

Bạn cũng có thể muốn kiểm tra

use Webklex\PHPIMAP\ClientManager;
use Webklex\PHPIMAP\Client;

$cm = new ClientManager['path/to/config/imap.php'];

// or use an array of options instead
$cm = new ClientManager[$options = []];

/** @var \Webklex\PHPIMAP\Client $client */
$client = $cm->account['account_identifier'];

// or create a new instance manually        
$client = $cm->make[[
    'host'          => 'somehost.com',
    'port'          => 993,
    'encryption'    => 'ssl',
    'validate_cert' => true,
    'username'      => 'username',
    'password'      => 'password',
    'protocol'      => 'imap'
]];

//Connect to the IMAP Server
$client->connect[];

//Get all Mailboxes
/** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
$folders = $client->getFolders[];

//Loop through every Mailbox
/** @var \Webklex\PHPIMAP\Folder $folder */
foreach[$folders as $folder]{

    //Get all Messages of the current Mailbox $folder
    /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
    $messages = $folder->messages[]->all[]->get[];
    
    /** @var \Webklex\PHPIMAP\Message $message */
    foreach[$messages as $message]{
        echo $message->getSubject[].'
'; echo 'Attachments: '.$message->getAttachments[]->count[].'
'; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
2 nếu tiện ích mở rộng được bật

2. ] Bây giờ hãy cài đặt gói PHP-IMAP bằng cách chạy lệnh sau

composer require webklex/php-imap

3. ] Tạo tệp cấu hình tùy chỉnh của riêng bạn như config/imap. php

Cấu hình

giao thức được hỗ trợ

  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    3 — Sử dụng IMAP [mặc định]
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    4 — Thay vào đó, hãy sử dụng mô-đun php imap
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    5 — Sử dụng POP3
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    6 — Sử dụng NNTP

Các phương pháp mã hóa sau đây được hỗ trợ

  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    7 — Tắt mã hóa
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    8 — Sử dụng SSL
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    9 — Sử dụng TLS
  • sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
    20 — Sử dụng STARTTLS [tLS bí danh] [chỉ phiên bản cũ]
  • sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
    21 — Sử dụng NoTLS [chỉ cũ]

Cấu hình/imap chi tiết. cấu hình php

  • sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
    22 — tài khoản mặc định đã sử dụng. Nó sẽ được sử dụng làm mặc định cho mọi tham số tài khoản bị thiếu. Tuy nhiên, nếu tài khoản mặc định thiếu một tham số, gói mặc định sẽ được sử dụng. Đặt thành
    use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    7 để tắt chức năng này
  • sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
    24 — tất cả các tài khoản khả dụng
    • sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
      22 — Số nhận dạng tài khoản [trong trường hợp này là
      sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
      22 nhưng cũng có thể là
      sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
      27, v.v.]
      • sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
        28 — máy chủ imap
      • sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
        29 — cổng imap
      • sudo apt-get install php*-imap && sudo apache2ctl graceful
        20 — phương thức mã hóa mong muốn
      • ________ 221 — quyết định xem bạn có muốn xác minh chứng chỉ hay không
      • sudo apt-get install php*-imap && sudo apache2ctl graceful
        22 — tên người dùng tài khoản imap
      • sudo apt-get install php*-imap && sudo apache2ctl graceful
        23 — mật khẩu tài khoản imap
      • sudo apt-get install php*-imap && sudo apache2ctl graceful
        24 — phương thức xác thực imap. Sử dụng
        sudo apt-get install php*-imap && sudo apache2ctl graceful
        25 để sử dụng oAuth cho Google, v.v.
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    26 — Định dạng ngày tháng mặc định được sử dụng để chuyển đổi bất kỳ Carbon cụ thể nào. đối tượng lớp thành một chuỗi ngày hợp lệ. [
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    27,
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    28,
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    29]
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    20 — tùy chọn tìm nạp bổ sung
    • use Webklex\PHPIMAP\ClientManager;
      use Webklex\PHPIMAP\Client;
      
      $cm = new ClientManager['path/to/config/imap.php'];
      
      // or use an array of options instead
      $cm = new ClientManager[$options = []];
      
      /** @var \Webklex\PHPIMAP\Client $client */
      $client = $cm->account['account_identifier'];
      
      // or create a new instance manually        
      $client = $cm->make[[
          'host'          => 'somehost.com',
          'port'          => 993,
          'encryption'    => 'ssl',
          'validate_cert' => true,
          'username'      => 'username',
          'password'      => 'password',
          'protocol'      => 'imap'
      ]];
      
      //Connect to the IMAP Server
      $client->connect[];
      
      //Get all Mailboxes
      /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
      $folders = $client->getFolders[];
      
      //Loop through every Mailbox
      /** @var \Webklex\PHPIMAP\Folder $folder */
      foreach[$folders as $folder]{
      
          //Get all Messages of the current Mailbox $folder
          /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
          $messages = $folder->messages[]->all[]->get[];
          
          /** @var \Webklex\PHPIMAP\Message $message */
          foreach[$messages as $message]{
              echo $message->getSubject[].'
      '; echo 'Attachments: '.$message->getAttachments[]->count[].'
      '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
      21 — bạn có thể sử dụng bất kỳ ký tự được hỗ trợ nào, chẳng hạn như ". ", "/", vân vân
    • use Webklex\PHPIMAP\ClientManager;
      use Webklex\PHPIMAP\Client;
      
      $cm = new ClientManager['path/to/config/imap.php'];
      
      // or use an array of options instead
      $cm = new ClientManager[$options = []];
      
      /** @var \Webklex\PHPIMAP\Client $client */
      $client = $cm->account['account_identifier'];
      
      // or create a new instance manually        
      $client = $cm->make[[
          'host'          => 'somehost.com',
          'port'          => 993,
          'encryption'    => 'ssl',
          'validate_cert' => true,
          'username'      => 'username',
          'password'      => 'password',
          'protocol'      => 'imap'
      ]];
      
      //Connect to the IMAP Server
      $client->connect[];
      
      //Get all Mailboxes
      /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
      $folders = $client->getFolders[];
      
      //Loop through every Mailbox
      /** @var \Webklex\PHPIMAP\Folder $folder */
      foreach[$folders as $folder]{
      
          //Get all Messages of the current Mailbox $folder
          /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
          $messages = $folder->messages[]->all[]->get[];
          
          /** @var \Webklex\PHPIMAP\Message $message */
          foreach[$messages as $message]{
              echo $message->getSubject[].'
      '; echo 'Attachments: '.$message->getAttachments[]->count[].'
      '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
      22 —
      use Webklex\PHPIMAP\ClientManager;
      use Webklex\PHPIMAP\Client;
      
      $cm = new ClientManager['path/to/config/imap.php'];
      
      // or use an array of options instead
      $cm = new ClientManager[$options = []];
      
      /** @var \Webklex\PHPIMAP\Client $client */
      $client = $cm->account['account_identifier'];
      
      // or create a new instance manually        
      $client = $cm->make[[
          'host'          => 'somehost.com',
          'port'          => 993,
          'encryption'    => 'ssl',
          'validate_cert' => true,
          'username'      => 'username',
          'password'      => 'password',
          'protocol'      => 'imap'
      ]];
      
      //Connect to the IMAP Server
      $client->connect[];
      
      //Get all Mailboxes
      /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
      $folders = $client->getFolders[];
      
      //Loop through every Mailbox
      /** @var \Webklex\PHPIMAP\Folder $folder */
      foreach[$folders as $folder]{
      
          //Get all Messages of the current Mailbox $folder
          /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
          $messages = $folder->messages[]->all[]->get[];
          
          /** @var \Webklex\PHPIMAP\Message $message */
          foreach[$messages as $message]{
              echo $message->getSubject[].'
      '; echo 'Attachments: '.$message->getAttachments[]->count[].'
      '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
      23 [thư được đánh dấu là đã đọc bằng cách tìm nạp nội dung thư] hoặc
      use Webklex\PHPIMAP\ClientManager;
      use Webklex\PHPIMAP\Client;
      
      $cm = new ClientManager['path/to/config/imap.php'];
      
      // or use an array of options instead
      $cm = new ClientManager[$options = []];
      
      /** @var \Webklex\PHPIMAP\Client $client */
      $client = $cm->account['account_identifier'];
      
      // or create a new instance manually        
      $client = $cm->make[[
          'host'          => 'somehost.com',
          'port'          => 993,
          'encryption'    => 'ssl',
          'validate_cert' => true,
          'username'      => 'username',
          'password'      => 'password',
          'protocol'      => 'imap'
      ]];
      
      //Connect to the IMAP Server
      $client->connect[];
      
      //Get all Mailboxes
      /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
      $folders = $client->getFolders[];
      
      //Loop through every Mailbox
      /** @var \Webklex\PHPIMAP\Folder $folder */
      foreach[$folders as $folder]{
      
          //Get all Messages of the current Mailbox $folder
          /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
          $messages = $folder->messages[]->all[]->get[];
          
          /** @var \Webklex\PHPIMAP\Message $message */
          foreach[$messages as $message]{
              echo $message->getSubject[].'
      '; echo 'Attachments: '.$message->getAttachments[]->count[].'
      '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
      24 [tìm nạp thư mà không đặt cờ "seen"]
    • use Webklex\PHPIMAP\ClientManager;
      use Webklex\PHPIMAP\Client;
      
      $cm = new ClientManager['path/to/config/imap.php'];
      
      // or use an array of options instead
      $cm = new ClientManager[$options = []];
      
      /** @var \Webklex\PHPIMAP\Client $client */
      $client = $cm->account['account_identifier'];
      
      // or create a new instance manually        
      $client = $cm->make[[
          'host'          => 'somehost.com',
          'port'          => 993,
          'encryption'    => 'ssl',
          'validate_cert' => true,
          'username'      => 'username',
          'password'      => 'password',
          'protocol'      => 'imap'
      ]];
      
      //Connect to the IMAP Server
      $client->connect[];
      
      //Get all Mailboxes
      /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
      $folders = $client->getFolders[];
      
      //Loop through every Mailbox
      /** @var \Webklex\PHPIMAP\Folder $folder */
      foreach[$folders as $folder]{
      
          //Get all Messages of the current Mailbox $folder
          /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
          $messages = $folder->messages[]->all[]->get[];
          
          /** @var \Webklex\PHPIMAP\Message $message */
          foreach[$messages as $message]{
              echo $message->getSubject[].'
      '; echo 'Attachments: '.$message->getAttachments[]->count[].'
      '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
      25 — Nếu được đặt thành
      use Webklex\PHPIMAP\ClientManager;
      use Webklex\PHPIMAP\Client;
      
      $cm = new ClientManager['path/to/config/imap.php'];
      
      // or use an array of options instead
      $cm = new ClientManager[$options = []];
      
      /** @var \Webklex\PHPIMAP\Client $client */
      $client = $cm->account['account_identifier'];
      
      // or create a new instance manually        
      $client = $cm->make[[
          'host'          => 'somehost.com',
          'port'          => 993,
          'encryption'    => 'ssl',
          'validate_cert' => true,
          'username'      => 'username',
          'password'      => 'password',
          'protocol'      => 'imap'
      ]];
      
      //Connect to the IMAP Server
      $client->connect[];
      
      //Get all Mailboxes
      /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
      $folders = $client->getFolders[];
      
      //Loop through every Mailbox
      /** @var \Webklex\PHPIMAP\Folder $folder */
      foreach[$folders as $folder]{
      
          //Get all Messages of the current Mailbox $folder
          /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
          $messages = $folder->messages[]->all[]->get[];
          
          /** @var \Webklex\PHPIMAP\Message $message */
          foreach[$messages as $message]{
              echo $message->getSubject[].'
      '; echo 'Attachments: '.$message->getAttachments[]->count[].'
      '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
      7, tất cả thư sẽ được tìm nạp mà không có nội dung và bất kỳ tệp đính kèm tiềm ẩn nào
    • use Webklex\PHPIMAP\ClientManager;
      use Webklex\PHPIMAP\Client;
      
      $cm = new ClientManager['path/to/config/imap.php'];
      
      // or use an array of options instead
      $cm = new ClientManager[$options = []];
      
      /** @var \Webklex\PHPIMAP\Client $client */
      $client = $cm->account['account_identifier'];
      
      // or create a new instance manually        
      $client = $cm->make[[
          'host'          => 'somehost.com',
          'port'          => 993,
          'encryption'    => 'ssl',
          'validate_cert' => true,
          'username'      => 'username',
          'password'      => 'password',
          'protocol'      => 'imap'
      ]];
      
      //Connect to the IMAP Server
      $client->connect[];
      
      //Get all Mailboxes
      /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
      $folders = $client->getFolders[];
      
      //Loop through every Mailbox
      /** @var \Webklex\PHPIMAP\Folder $folder */
      foreach[$folders as $folder]{
      
          //Get all Messages of the current Mailbox $folder
          /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
          $messages = $folder->messages[]->all[]->get[];
          
          /** @var \Webklex\PHPIMAP\Message $message */
          foreach[$messages as $message]{
              echo $message->getSubject[].'
      '; echo 'Attachments: '.$message->getAttachments[]->count[].'
      '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
      27 — Nếu được đặt thành
      use Webklex\PHPIMAP\ClientManager;
      use Webklex\PHPIMAP\Client;
      
      $cm = new ClientManager['path/to/config/imap.php'];
      
      // or use an array of options instead
      $cm = new ClientManager[$options = []];
      
      /** @var \Webklex\PHPIMAP\Client $client */
      $client = $cm->account['account_identifier'];
      
      // or create a new instance manually        
      $client = $cm->make[[
          'host'          => 'somehost.com',
          'port'          => 993,
          'encryption'    => 'ssl',
          'validate_cert' => true,
          'username'      => 'username',
          'password'      => 'password',
          'protocol'      => 'imap'
      ]];
      
      //Connect to the IMAP Server
      $client->connect[];
      
      //Get all Mailboxes
      /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
      $folders = $client->getFolders[];
      
      //Loop through every Mailbox
      /** @var \Webklex\PHPIMAP\Folder $folder */
      foreach[$folders as $folder]{
      
          //Get all Messages of the current Mailbox $folder
          /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
          $messages = $folder->messages[]->all[]->get[];
          
          /** @var \Webklex\PHPIMAP\Message $message */
          foreach[$messages as $message]{
              echo $message->getSubject[].'
      '; echo 'Attachments: '.$message->getAttachments[]->count[].'
      '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
      7, tất cả thư sẽ được tìm nạp mà không có bất kỳ cờ nào
    • use Webklex\PHPIMAP\ClientManager;
      use Webklex\PHPIMAP\Client;
      
      $cm = new ClientManager['path/to/config/imap.php'];
      
      // or use an array of options instead
      $cm = new ClientManager[$options = []];
      
      /** @var \Webklex\PHPIMAP\Client $client */
      $client = $cm->account['account_identifier'];
      
      // or create a new instance manually        
      $client = $cm->make[[
          'host'          => 'somehost.com',
          'port'          => 993,
          'encryption'    => 'ssl',
          'validate_cert' => true,
          'username'      => 'username',
          'password'      => 'password',
          'protocol'      => 'imap'
      ]];
      
      //Connect to the IMAP Server
      $client->connect[];
      
      //Get all Mailboxes
      /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
      $folders = $client->getFolders[];
      
      //Loop through every Mailbox
      /** @var \Webklex\PHPIMAP\Folder $folder */
      foreach[$folders as $folder]{
      
          //Get all Messages of the current Mailbox $folder
          /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
          $messages = $folder->messages[]->all[]->get[];
          
          /** @var \Webklex\PHPIMAP\Message $message */
          foreach[$messages as $message]{
              echo $message->getSubject[].'
      '; echo 'Attachments: '.$message->getAttachments[]->count[].'
      '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
      29 — Tùy chọn mã định danh khóa tin nhắn
    • composer require webklex/php-imap
      20 — Thứ tự tìm nạp tin nhắn
    • composer require webklex/php-imap
      21 — Vị trí và đường dẫn thư mục mặc định được giả định nếu không được cung cấp
    • composer require webklex/php-imap
      22 — cấu hình đặc biệt cho imap_open[]
      • composer require webklex/php-imap
        23 — tắt thuộc tính xác thực
    • composer require webklex/php-imap
      24 — Hiện tại chỉ có thể đặt bộ giải mã tin nhắn và tệp đính kèm
    • composer require webklex/php-imap
      25 — Cấu hình mặc định
    • composer require webklex/php-imap
      26 — Cấu hình mặc định
      • composer require webklex/php-imap
        27 — Mặt nạ thông báo mặc định
      • composer require webklex/php-imap
        28 — Mặt nạ đính kèm mặc định

Cách sử dụng

Ví dụ sử dụng cơ bản

Đây là một ví dụ cơ bản, sẽ lặp lại tất cả các Thư trong tất cả các thư mục imap và sẽ chuyển mọi thư vào INBOX. đọc. Xin lưu ý rằng điều này không nên được thử nghiệm trong cuộc sống thực và chỉ nhằm mục đích tạo ấn tượng về cách mọi thứ hoạt động

use Webklex\PHPIMAP\ClientManager;
use Webklex\PHPIMAP\Client;

$cm = new ClientManager['path/to/config/imap.php'];

// or use an array of options instead
$cm = new ClientManager[$options = []];

/** @var \Webklex\PHPIMAP\Client $client */
$client = $cm->account['account_identifier'];

// or create a new instance manually        
$client = $cm->make[[
    'host'          => 'somehost.com',
    'port'          => 993,
    'encryption'    => 'ssl',
    'validate_cert' => true,
    'username'      => 'username',
    'password'      => 'password',
    'protocol'      => 'imap'
]];

//Connect to the IMAP Server
$client->connect[];

//Get all Mailboxes
/** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
$folders = $client->getFolders[];

//Loop through every Mailbox
/** @var \Webklex\PHPIMAP\Folder $folder */
foreach[$folders as $folder]{

    //Get all Messages of the current Mailbox $folder
    /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
    $messages = $folder->messages[]->all[]->get[];
    
    /** @var \Webklex\PHPIMAP\Message $message */
    foreach[$messages as $message]{
        echo $message->getSubject[].'
'; echo 'Attachments: '.$message->getAttachments[]->count[].'
'; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }

Thư mục / Hộp thư

Liệt kê tất cả các thư mục có sẵn

sudo apt-get install php*-mbstring php*-mcrypt && sudo apache2ctl graceful
2

Nhận một thư mục cụ thể

sudo apt-get install php*-imap && sudo apache2ctl graceful
2

oAuth

Vui lòng xem bài viết wiki để thiết lập thư gmail/google

Ví dụ oAuth cơ bản

use Webklex\PHPIMAP\ClientManager;
use Webklex\PHPIMAP\Client;

$cm = new ClientManager['path/to/config/imap.php'];

// or use an array of options instead
$cm = new ClientManager[$options = []];

/** @var \Webklex\PHPIMAP\Client $client */
$client = $cm->account['account_identifier'];

// or create a new instance manually        
$client = $cm->make[[
    'host'          => 'somehost.com',
    'port'          => 993,
    'encryption'    => 'ssl',
    'validate_cert' => true,
    'username'      => 'username',
    'password'      => 'password',
    'protocol'      => 'imap'
]];

//Connect to the IMAP Server
$client->connect[];

//Get all Mailboxes
/** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
$folders = $client->getFolders[];

//Loop through every Mailbox
/** @var \Webklex\PHPIMAP\Folder $folder */
foreach[$folders as $folder]{

    //Get all Messages of the current Mailbox $folder
    /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
    $messages = $folder->messages[]->all[]->get[];
    
    /** @var \Webklex\PHPIMAP\Message $message */
    foreach[$messages as $message]{
        echo $message->getSubject[].'
'; echo 'Attachments: '.$message->getAttachments[]->count[].'
'; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
2

nhàn rỗi

Mỗi khi nhận được tin nhắn mới, máy chủ sẽ thông báo cho máy khách và gửi lại tin nhắn mới

composer require webklex/php-imap
2

Tìm kiếm tin nhắn

Tìm kiếm email cụ thể

use Webklex\PHPIMAP\ClientManager;
use Webklex\PHPIMAP\Client;

$cm = new ClientManager['path/to/config/imap.php'];

// or use an array of options instead
$cm = new ClientManager[$options = []];

/** @var \Webklex\PHPIMAP\Client $client */
$client = $cm->account['account_identifier'];

// or create a new instance manually        
$client = $cm->make[[
    'host'          => 'somehost.com',
    'port'          => 993,
    'encryption'    => 'ssl',
    'validate_cert' => true,
    'username'      => 'username',
    'password'      => 'password',
    'protocol'      => 'imap'
]];

//Connect to the IMAP Server
$client->connect[];

//Get all Mailboxes
/** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
$folders = $client->getFolders[];

//Loop through every Mailbox
/** @var \Webklex\PHPIMAP\Folder $folder */
foreach[$folders as $folder]{

    //Get all Messages of the current Mailbox $folder
    /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
    $messages = $folder->messages[]->all[]->get[];
    
    /** @var \Webklex\PHPIMAP\Message $message */
    foreach[$messages as $message]{
        echo $message->getSubject[].'
'; echo 'Attachments: '.$message->getAttachments[]->count[].'
'; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
6

Bí danh tìm kiếm có sẵn để đọc mã tốt hơn

use Webklex\PHPIMAP\ClientManager;
use Webklex\PHPIMAP\Client;

$cm = new ClientManager['path/to/config/imap.php'];

// or use an array of options instead
$cm = new ClientManager[$options = []];

/** @var \Webklex\PHPIMAP\Client $client */
$client = $cm->account['account_identifier'];

// or create a new instance manually        
$client = $cm->make[[
    'host'          => 'somehost.com',
    'port'          => 993,
    'encryption'    => 'ssl',
    'validate_cert' => true,
    'username'      => 'username',
    'password'      => 'password',
    'protocol'      => 'imap'
]];

//Connect to the IMAP Server
$client->connect[];

//Get all Mailboxes
/** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
$folders = $client->getFolders[];

//Loop through every Mailbox
/** @var \Webklex\PHPIMAP\Folder $folder */
foreach[$folders as $folder]{

    //Get all Messages of the current Mailbox $folder
    /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
    $messages = $folder->messages[]->all[]->get[];
    
    /** @var \Webklex\PHPIMAP\Message $message */
    foreach[$messages as $message]{
        echo $message->getSubject[].'
'; echo 'Attachments: '.$message->getAttachments[]->count[].'
'; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
7

Tất cả các phương pháp truy vấn / tìm kiếm có sẵn có thể được tìm thấy ở đây. Truy vấn. lớp

tiêu chí tìm kiếm có sẵn

  • composer require webklex/php-imap
    29 - trả lại tất cả thư phù hợp với phần còn lại của tiêu chí
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    60 — so khớp các thông báo với cờ \ANSWERED được đặt
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    61 "chuỗi" — so khớp thông báo với "chuỗi" trong Bcc. đồng ruộng
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    62 "date" — so khớp thông báo với Date. trước "ngày"
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    63 "chuỗi" — khớp thư với "chuỗi" trong nội dung thư
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    64 "chuỗi" — so khớp thông báo với "chuỗi" trong Cc. đồng ruộng
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    65 — so khớp các tin nhắn đã xóa
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    66 — so khớp các thư với bộ cờ \FLAGGED [đôi khi được gọi là Quan trọng hoặc Khẩn cấp]
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    67 "chuỗi" — so khớp thông báo với "chuỗi" trong Từ. đồng ruộng
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    68 "chuỗi" — so khớp thông báo với từ khóa "chuỗi"
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    69 — so khớp tin nhắn mới
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    70 — không khớp
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    71 — ghép các tin nhắn cũ
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    72 "date" — so khớp thông báo với Date. phù hợp với "ngày"
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    73 — so khớp các thông báo với bộ cờ \RECENT
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    74 — so khớp các tin nhắn đã được đọc [cờ \SEEN được đặt]
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    75 "date" — so khớp thông báo với Date. sau "ngày"
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    76 "chuỗi" — so khớp thông báo với "chuỗi" trong Chủ đề
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    77 "chuỗi" — so khớp tin nhắn với văn bản "chuỗi"
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    78 "chuỗi" — so khớp thư với "chuỗi" trong phần Đến
  • use Webklex\PHPIMAP\ClientManager;
    use Webklex\PHPIMAP\Client;
    
    $cm = new ClientManager['path/to/config/imap.php'];
    
    // or use an array of options instead
    $cm = new ClientManager[$options = []];
    
    /** @var \Webklex\PHPIMAP\Client $client */
    $client = $cm->account['account_identifier'];
    
    // or create a new instance manually        
    $client = $cm->make[[
        'host'          => 'somehost.com',
        'port'          => 993,
        'encryption'    => 'ssl',
        'validate_cert' => true,
        'username'      => 'username',
        'password'      => 'password',
        'protocol'      => 'imap'
    ]];
    
    //Connect to the IMAP Server
    $client->connect[];
    
    //Get all Mailboxes
    /** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
    $folders = $client->getFolders[];
    
    //Loop through every Mailbox
    /** @var \Webklex\PHPIMAP\Folder $folder */
    foreach[$folders as $folder]{
    
        //Get all Messages of the current Mailbox $folder
        /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
        $messages = $folder->messages[]->all[]->get[];
        
        /** @var \Webklex\PHPIMAP\Message $message */
        foreach[$messages as $message]{
            echo $message->getSubject[].'
    '; echo 'Attachments: '.$message->getAttachments[]->count[].'
    '; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
    79 — các tin nhắn phù hợp chưa được trả lời
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    00 — khớp với các tin nhắn không bị xóa
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    01 — khớp với các thông báo không được gắn cờ
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    02 "chuỗi" — đối sánh các thông báo không có từ khóa "chuỗi"
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    03 — khớp với các tin nhắn chưa được đọc

Thêm thông tin

giới hạn kết quả

Giới hạn các email yêu cầu

sudo apt-get install php*-imap && sudo apache2ctl graceful
0

đếm tin nhắn

Đếm tất cả các tin nhắn có sẵn phù hợp với tiêu chí tìm kiếm hiện tại

sudo apt-get install php*-imap && sudo apache2ctl graceful
1

phân trang

Đánh trang một truy vấn

sudo apt-get install php*-imap && sudo apache2ctl graceful
2

Phân trang một bộ sưu tập tin nhắn

sudo apt-get install php*-imap && sudo apache2ctl graceful
3

Xem ví dụ về danh sách được phân trang

sudo apt-get install php*-imap && sudo apache2ctl graceful
4
sudo apt-get install php*-imap && sudo apache2ctl graceful
5

Bạn cũng có thể phân trang một phiên bản Thư mục-, Tệp đính kèm- hoặc FlagCollection

Xem ví dụ

Bạn có thể tìm thấy một vài ví dụ về lưỡi dao trong /examples

Tìm nạp một tin nhắn cụ thể

Nhận một tin nhắn cụ thể bằng uid [Xin lưu ý rằng uid không phải là duy nhất và có thể thay đổi]

sudo apt-get install php*-imap && sudo apache2ctl graceful
6

cờ tin nhắn

Gắn cờ hoặc "bỏ gắn cờ" một thư

sudo apt-get install php*-imap && sudo apache2ctl graceful
7

Đánh dấu tất cả thư là "đã đọc" trong khi tìm nạp

sudo apt-get install php*-imap && sudo apache2ctl graceful
8

Không đánh dấu tất cả thư là "đã đọc" trong khi tìm nạp

sudo apt-get install php*-imap && sudo apache2ctl graceful
9

tệp đính kèm

Lưu tệp đính kèm tin nhắn

composer require webklex/php-imap
0

Tìm nạp nâng cao

Tìm nạp tin nhắn mà không cần tìm nạp nội dung [giảm tải]

composer require webklex/php-imap
1

Tìm nạp thư mà không tìm nạp nội dung, cờ và tệp đính kèm [giảm tải]

composer require webklex/php-imap
2

Thay đổi thứ tự tìm nạp tin nhắn

composer require webklex/php-imap
3

Sự kiện

Các sự kiện sau đây có sẵn

  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    04 — có thể được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    05
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    06 — được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    07
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    08 — được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    09
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    10 — được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    11
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    12 — được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    13
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    14 — được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    15
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    16 — được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    17
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    18 — có thể được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    19
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    20 — được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    21
  • sudo apt-get install php*-imap && sudo apache2ctl graceful
    22 — được kích hoạt bởi
    sudo apt-get install php*-imap && sudo apache2ctl graceful
    23

Tạo và đăng ký sự kiện tùy chỉnh của riêng bạn

composer require webklex/php-imap
4

hoặc đặt nó trong tệp cấu hình của bạn bên dưới

sudo apt-get install php*-imap && sudo apache2ctl graceful
24

đắp mặt nạ

PHP-IMAP đã đi kèm với hai mặt nạ mặc định và

Phiên bản đeo mặt nạ phải được gọi theo cách thủ công và được thiết kế để thêm chức năng tùy chỉnh

Bạn có thể gọi mặt nạ mặc định bằng cách gọi phương thức mặt nạ mà không có bất kỳ đối số nào

composer require webklex/php-imap
5

Có một số phương pháp có sẵn để đặt mặt nạ mặc định

composer require webklex/php-imap
6

Cái cuối cùng sẽ không đặt mặt nạ nhưng tạo một phiên bản được che bằng cách sử dụng mặt nạ được cung cấp

Bạn cũng có thể đặt mặt nạ mặc định bên trong tệp

sudo apt-get install php*-imap && sudo apache2ctl graceful
25 của mình bên dưới
composer require webklex/php-imap
26

Bạn cũng có thể đắp mặt nạ

composer require webklex/php-imap
7

Nếu bạn muốn triển khai mặt nạ của riêng mình, chỉ cần mở rộng hoặc triển khai logic mong muốn của bạn

composer require webklex/php-imap
8

Ví dụ bổ sung có thể được tìm thấy ở đây

đặc biệt

Tìm thư mục chứa thư

composer require webklex/php-imap
9

Ủng hộ

Nếu bạn gặp phải bất kỳ vấn đề nào hoặc nếu bạn tìm thấy lỗi, vui lòng tạo một vấn đề mới. Tuy nhiên, xin lưu ý rằng có thể mất một chút thời gian để nhận được câu trả lời. Các vấn đề lạc đề, khiếm nhã hoặc lạm dụng sẽ bị xóa mà không cần thông báo trước

Nếu bạn cần hỗ trợ thương mại hoặc ngay lập tức, vui lòng gửi thư cho tôi tại github@webklex. com

Một thông báo nhỏ

Nếu bạn viết mã nguồn trong vấn đề của mình, vui lòng cân nhắc để định dạng mã nguồn chính xác. Điều này làm cho nó dễ đọc hơn rất nhiều và mọi người có nhiều khả năng nhận xét và giúp đỡ hơn. ]

```php

echo 'mã php của bạn. ';

```

sẽ biến thành

use Webklex\PHPIMAP\ClientManager;
use Webklex\PHPIMAP\Client;

$cm = new ClientManager['path/to/config/imap.php'];

// or use an array of options instead
$cm = new ClientManager[$options = []];

/** @var \Webklex\PHPIMAP\Client $client */
$client = $cm->account['account_identifier'];

// or create a new instance manually        
$client = $cm->make[[
    'host'          => 'somehost.com',
    'port'          => 993,
    'encryption'    => 'ssl',
    'validate_cert' => true,
    'username'      => 'username',
    'password'      => 'password',
    'protocol'      => 'imap'
]];

//Connect to the IMAP Server
$client->connect[];

//Get all Mailboxes
/** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
$folders = $client->getFolders[];

//Loop through every Mailbox
/** @var \Webklex\PHPIMAP\Folder $folder */
foreach[$folders as $folder]{

    //Get all Messages of the current Mailbox $folder
    /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
    $messages = $folder->messages[]->all[]->get[];
    
    /** @var \Webklex\PHPIMAP\Message $message */
    foreach[$messages as $message]{
        echo $message->getSubject[].'
'; echo 'Attachments: '.$message->getAttachments[]->count[].'
'; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
0

Tính năng & yêu cầu kéo

Mọi người đều có thể đóng góp cho dự án này. Mọi yêu cầu kéo sẽ được xem xét nhưng nó cũng có thể bị từ chối. Để ngăn chặn công việc không cần thiết, trước tiên hãy cân nhắc tạo một vấn đề về tính năng, nếu bạn dự định thực hiện các thay đổi lớn hơn. Tất nhiên, bạn cũng có thể tạo một vấn đề về tính năng mới nếu bạn chỉ muốn một tính năng;]

Tài liệu

MethodArgumentsReturnDescriptionsetConfigarray $configselfĐặt cấu hình Máy khách. Hãy xem
sudo apt-get install php*-imap && sudo apache2ctl graceful
25 để có thêm cảm hứng. getConnectionresource $connectionresourceNhận tài nguyên hình ảnh hiện tạiisConnectedboolXác định xem kết nối có được thiết lập hay không. checkConnectionXác định xem kết nối đã được thiết lập chưa và kết nối nếu không. kết nối Kết nối với máy chủ. kết nối lạiChấm dứt và kết nối lại với máy chủ. ngắt kết nối Ngắt kết nối với máy chủ. getFolderstring $folder_name, $delimiter = nullFolderNhận phiên bản Thư mục theo tên hoặc đường dẫngetFoldersbool $hierarchical, string hoặc null $parent_folderFolderCollectionNhận danh sách thư mục. Nếu thứ tự phân cấp được đặt thành true, nó sẽ tạo một cây thư mục, nếu không, nó sẽ trả về mảng phẳng. openFolderstring hoặc Thư mục $folder, integer $attemptsMở một thư mục nhất định. createFolderstring $namebooleanTạo thư mục mới. getQuotaarrayTruy xuất cài đặt mức hạn ngạch và thống kê sử dụng trên mỗi hộp thưgetQuotaRootstring $quota_rootarrayTruy xuất cài đặt hạn ngạch trên mỗi người dùngexpungeboolXóa tất cả thư được đánh dấu để xóasetTimeoutstring hoặc int $type, int $timeoutbooleanĐặt thời gian chờ cho một số thao tác imap nhất định. 1. mở, 2. Đọc, 3. Viết, 4. ClosegetTimeoutstring hoặc int $typeintKiểm tra hộp thư hiện tạisetDefaultMessageMaskstring $maskselfĐặt lớp mặt nạ thông báo mặc địnhgetDefaultMessageMaskstringLấy tên lớp mặt nạ thông báo mặc định hiện tạisetDefaultAttachmentMaskstring $maskselfĐặt lớp mặt nạ tệp đính kèm mặc địnhgetDefaultAttachmentMaskstringLấy tên lớp mặt nạ tệp đính kèm mặc định hiện tạigetFolderPathstringLấy đường dẫn thư mục hiện tạiMethodArgumentsReturnDescriptionBodyMessagePhân tích nội dung thư . set Childrenarray $ childrenselfĐặt con. xóaXóa Hộp thư hiện tạiđăng kýĐăng ký vào Hộp thư hiện tạiunsubscribeHủy đăng ký khỏi Hộp thư hiện tạiidlecallable$callback[Message $new_message]Không hoạt động thư mục hiện tạimovestring $mailboxDi chuyển hoặc Đổi tên Hộp thư hiện tạirenamestring $mailboxDi chuyển hoặc Đổi tên Hộp thư hiện tạigetStatusarrayTrả về thông tin trạng thái trên hộp thư hiện tạiexaminearrayTrả về thông tin trạng thái trên hộp thư hiện tạiappendMessagestring $ . truy vấn[] chuỗi tìm kiếm $charset = 'UTF-8'WhereQueryAlias ​​cho thư mục. query[] MethodArgumentsReturnDes mô tảwheremixed $criteria, $value = nullWhereQueryThêm tiêu chí mới cho truy vấn hiện tại hoặc WhereClosure $closure WhereQuery Nếu được hỗ trợ, bạn có thể thực hiện các yêu cầu tìm kiếm mở rộng và WhereClosure $closure WhereQuery Nếu được hỗ trợ, bạn có thể thực hiện các yêu cầu tìm kiếm mở rộng all WhereQueryChọn tất cả các thư hiện có đã trả lờiWhereQueryChọn các thư đã trả lờixóa WhereQueryChọn các thư đã xóanewWhereQueryChọn các thư mớinotWhereQueryKhông chọn các thưoldWhereQueryChọn các thư cũrecentWhereQueryChọn các thư gần đâyseenWhereQuerySelect . ]chuỗi văn bản $valueWhereQueryChọn thư khớp với một nội dung văn bản nhất địnhsubjectstring $valueWhereQueryChọn thư khớp với một chủ đề nhất định từ chuỗi $valueWhereQueryChọn thư từ một ngày nhất định trên chuỗi $valueWhereQueryChọn thư vào một ngày nhất địnhchuỗi từ khóa $valueWhereQueryChọn thư khớp với một từ khóa nhất địnhtừchuỗi $valueWhereQueryChọn thư khớp với một người gửi nhất định [Từ. ]flaggedstring $valueWhereQueryChọn tin nhắn khớp với một flagccstring đã cho $valueWhereQueryChọn tin nhắn khớp với một người nhận nhất định [CC. ]bodystring $valueWhereQueryChọn thư khớp với nội dung HTML đã cho trướcchuỗi $valueWhereQueryChọn thư trước chuỗi ngày tháng cho trướcbccstring $valueWhereQueryChọn thư khớp với người nhận nhất định [BCC. ]countintegerĐếm tất cả thư có sẵn khớp với tiêu chí tìm kiếm hiện tạigetMessageCollectionTìm nạp thư với truy vấn hiện tạilimitinteger $limit, integer $page = 1WhereQueryGiới hạn số lượng thư được tìm nạpsetFetchOptionsboolean $fetch_optionsWhereQueryĐặt tùy chọn tìm nạpsetFetchBodyboolean $fetch_bodyWhereQueryĐặt tùy chọn nội dung tìm nạpsetFetchFlagsboolean $fetch_flagsWhereQueryĐặt tùy chọn cờ tìm nạpsetFetchOrderstring $fetch_orderWhereQueryTìm nạp . markAsReadWhereQueryĐánh dấu tất cả thư là "đã đọc" trong khi tìm nạppaginateint $perPage = 5, $page = null, $pageName = 'imap_page'LengthAwarePaginatorPhân trang truy vấn hiện tại. MethodArgumentsReturnDescriptiongetContentstring hoặc nullNhận nội dung tệp đính kèmgetMimeTypestring hoặc nullNhận tệp đính kèm loại mimegetExtensionstring hoặc nullNhận phần mở rộng tệp đính kèm đã đoángetIdstring hoặc nullNhận tệp đính kèm idgetNamestring hoặc nullNhận tên tệp đính kèmgetContentstring hoặc nullNhận nội dung tệp đính kèmsetSizeint hoặc nullNhận kích thước tệp đính kèmgetTypestring hoặc nullNhận loại tệp đính kèmgetDispositionstring hoặc nullNhận tệp đính kèm bố trígetContentTypestring hoặc nullNhận loại nội dung tệp đính kèmavestring $path, string $

Mở rộng Chiếu sáng\Hỗ trợ\Bộ sưu tập. lớp

MethodArgumentsReturnDescriptionpaginateint $perPage = 15, $page = null, $pageName = 'page'LengthAwarePaginatorPaginate bộ sưu tập hiện tại

Mở rộng Chiếu sáng\Hỗ trợ\Bộ sưu tập. lớp

MethodArgumentsReturnDescriptionpaginateint $perPage = 15, $page = null, $pageName = 'page'LengthAwarePaginatorPaginate bộ sưu tập hiện tại

Mở rộng Chiếu sáng\Hỗ trợ\Bộ sưu tập. lớp

MethodArgumentsReturnDescriptionpaginateint $perPage = 15, $page = null, $pageName = 'page'LengthAwarePaginatorPaginate bộ sưu tập hiện tại

Mở rộng Chiếu sáng\Hỗ trợ\Bộ sưu tập. lớp

MethodArgumentsReturnDescriptionpaginateint $perPage = 15, $page = null, $pageName = 'page'LengthAwarePaginatorPaginate bộ sưu tập hiện tại

Các vấn đề đã biết

Lỗi ErrorSolutionKerberos. Không tìm thấy tệp bộ đệm thông tin xác thực [thử chạy kinit] [. ] Bỏ ghi chú "DISABLE_AUTHENTICATOR" bên trong và sử dụng giao thức
use Webklex\PHPIMAP\ClientManager;
use Webklex\PHPIMAP\Client;

$cm = new ClientManager['path/to/config/imap.php'];

// or use an array of options instead
$cm = new ClientManager[$options = []];

/** @var \Webklex\PHPIMAP\Client $client */
$client = $cm->account['account_identifier'];

// or create a new instance manually        
$client = $cm->make[[
    'host'          => 'somehost.com',
    'port'          => 993,
    'encryption'    => 'ssl',
    'validate_cert' => true,
    'username'      => 'username',
    'password'      => 'password',
    'protocol'      => 'imap'
]];

//Connect to the IMAP Server
$client->connect[];

//Get all Mailboxes
/** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
$folders = $client->getFolders[];

//Loop through every Mailbox
/** @var \Webklex\PHPIMAP\Folder $folder */
foreach[$folders as $folder]{

    //Get all Messages of the current Mailbox $folder
    /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
    $messages = $folder->messages[]->all[]->get[];
    
    /** @var \Webklex\PHPIMAP\Message $message */
    foreach[$messages as $message]{
        echo $message->getSubject[].'
'; echo 'Attachments: '.$message->getAttachments[]->count[].'
'; echo $message->getHTMLBody[]; //Move the current Message to 'INBOX.read' if[$message->move['INBOX.read'] == true]{ echo 'Message has ben moved'; }else{ echo 'Message could not be moved'; } } }
4

Thay đổi nhật ký

Vui lòng xem CHANGELOG để biết thêm thông tin về những thay đổi gần đây

Bảo vệ

Nếu bạn phát hiện ra bất kỳ vấn đề nào liên quan đến bảo mật, vui lòng gửi email tới github@webklex. com thay vì sử dụng trình theo dõi vấn đề

Chủ Đề