📡 You're offline — showing cached content
New version available!
Quick Access
Tutorials CodeIgniter 4 Events in CI4

Events in CI4

5 min read
Hook into app events with Events::on() and trigger custom events with Events::trigger().

Events in CI4

// app/Config/Events.php
use CodeIgniterEventsEvents;

Events::on("post_created", function(array $post) {
    // Send notification email
    $email = service("email");
    $email->setTo("admin@example.com");
    $email->setSubject("New post: " . $post["title"]);
    $email->send();
});

Events::on("user_login", function(object $user) {
    log_message("info", "User " . $user->email . " logged in");
    model(UserModel::class)->update($user->id, ["last_login" => date("Y-m-d H:i:s")]);
});

// Fire event in your code
Events::trigger("post_created", $post->toArray());
Events::trigger("user_login", $user);

// Check if event has listeners
Events::hasListeners("post_created");

// Priority (lower number = higher priority)
Events::on("post_created", $handler, EVENT_PRIORITY_HIGH);