РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
833 of 1392 menu

Метод send

Метод send класса Notification применяется для отправки уведомлений одному или нескольким пользователям. Первым параметром передаётся экземпляр модели уведомляемого пользователя или коллекция таких моделей, вторым - экземпляр класса уведомления. Метод автоматически определяет через какие каналы следует отправить уведомление, используя метод via самого уведомления.

Синтаксис

<?php use Illuminate\Support\Facades\Notification; Notification::send($notifiable, $notification); ?>

Пример

Давайте отправим простое уведомление на почту одному пользователю:

<?php namespace App\Http\Controllers; use App\Models\User; use App\Notifications\WelcomeNotification; use Illuminate\Support\Facades\Notification; class UserController extends Controller { public function sendWelcome(User $user) { Notification::send($user, new WelcomeNotification()); return response()->json(['message' => 'Notification sent']); } } ?>

Пример

Давайте отправим уведомление сразу нескольким пользователям:

<?php namespace App\Http\Controllers; use App\Models\User; use App\Notifications\SystemNotification; use Illuminate\Support\Facades\Notification; class UserController extends Controller { public function sendBulk() { $users = User::where('active', true)->get(); Notification::send($users, new SystemNotification()); return response()->json(['message' => 'Notifications sent to ' . $users->count() . ' users']); } } ?>

Результат выполнения кода:

"Notifications sent to 5 users"

Пример

Давайте отправим уведомление с кастомизацией каналов доставки, используя коллекцию уведомляемых объектов:

<?php namespace App\Http\Controllers; use App\Models\Order; use App\Models\User; use App\Notifications\OrderShipped; use Illuminate\Support\Facades\Notification; class OrderController extends Controller { public function shipOrder(Order $order) { $admins = User::where('role', 'admin')->get(); Notification::send($admins, new OrderShipped($order)); return response()->json(['status' => 'Order shipped and admins notified']); } } ?>

Смотрите также

  • метод sendNow,
    который отправляет уведомление немедленно, игнорируя очереди
  • метод route,
    который позволяет указать кастомный маршрут доставки
  • метод via,
    который определяет доступные каналы для уведомления
  • метод toMail,
    который формирует почтовое представление уведомления
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить