Інтеграція IMAP у ваш PHP-додаток

Перекладено ШІ 2 Laravel News 02 червня, 2026

Використання бібліотеки ImapEngine дозволяє легко управляти поштовими скриньками без необхідності в розширенні PHP IMAP. Досліджте можливості цього пакету, щоб дізнатися, як просто взаємодіяти з електронною поштою, зберігаючи час та зусилля!

```html

ImapEngine — це PHP пакет від Стіва Баумана, який надає простий API для управління поштовими скриньками без використання PHP IMAP розширення. Він пропонує зрозумілий API для роботи з поштовими скриньками і сумісний з версією PHP 8.1 та вищими:

use DirectoryTree\ImapEngine\Mailbox;

$mailbox = new Mailbox([
    'port' => 993,
    'username' => '...',
    'password' => '...',
    'encryption' => 'ssl',
    'host' => 'imap.example.com',
]);

$inbox = $mailbox->folders()->inbox();

// Отримати всі UIDs повідомлень вхідних.
$messages = $inbox->messages()->get();

// Усі повідомлення за останні 7 днів із конкретною темою
$messages = $inbox->messages()
    ->since(now()->subDays(7))
    ->subject('Hello World')
    ->get();

// Отримати всі повідомлення вхідних зі зверстаним контентом.
$messages = $inbox->messages()
    ->withHeaders() // Дозволити отримання заголовків повідомлення.
    ->withFlags() // Дозволити отримання прапорців повідомлення.
    ->withBody() // Дозволити отримання тексту повідомлення (включаючи вкладення).
    ->get();

Після отримання повідомлень ви можете взаємодіяти з ними: дізнатися тему, відправника (from), вкладення та інше. Ви також можете помітити повідомлення як прочитане або перемістити його:

foreach ($message->attachments() as $attachment) {
    // Отримати ім'я файлу вкладення.
    $attachment->filename();
 
    // Отримати тип вмісту вкладення.
    $attachment->contentType();
 
    // Отримати вміст вкладення.
    $attachment->contents();
 
    // Отримати розширення вкладення.
    $extension = $attachment->extension();
 
    // Зберегти вкладення у локальний файл.
    $attachment->save("/path/to/save/attachment.$extension");
}
 
// Позначити повідомлення як прочитане.
$message->markSeen();
 
// Перемістити повідомлення до папки "Архів".
$message->move('Archive');

# Основні функції

  • Легке налаштування підключення: Підключайтеся до поштових скриньок за допомогою простої конфігурації
  • Управління папками: Отримуйте та керуйте папками поштової скриньки
  • Отримання повідомлень: Доступ до повідомлень та їх отримання з поштових скриньок
  • Взаємодія з повідомленнями: Виконуйте дії, такі як позначення повідомлень як прочитаних або непрочитаних, а також видалення електронних листів
  • Підтримка Idle: Реальний моніторинг папок

Перегляньте вихідний код ImapEngine на GitHub для інструкцій з установки та прикладів.

```

Популярні

Інше, що варто прочитати

11 Оновлено 01 червня, 2026

Локальні моделі та їх скоупи в Laravel за допомогою атрибута Scope

В Laravel 12 ми отримали можливість використовувати новий підхід для визначення локальних скоупів у моделях Eloquent. Дізнайтеся, як новий атрибут #[Scope] спрощує цей процес і зберігає ваші назви методів незмінними

10 Оновлено 01 червня, 2026

Генерація документації в Laravel за допомогою штучного інтелекту

Docudoodle — це потужний пакет для генерації документації в Laravel, який допомагає легко аналізувати вашу кодову базу та створювати документацію за допомогою обраного вами AI. Чи готові ви дізнатися, як цей інструмент може спростити вашу роботу з документуванням коду? Читайте далі!

15 Оновлено 01 червня, 2026

Intervention Image: потужний інструмент для роботи з зображеннями у Laravel

Досліджуйте потужний пакет Intervention Image для PHP, який виводить редагування зображень на новий рівень з оновленою версією 3. Чи готові ви дізнатися, які нові можливості та функції чекають на вас у цьому інструменті