takeoto/message

Abstraction for system messages.

Installs: 3

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

pkg:composer/takeoto/message

dev-main 2023-05-10 07:49 UTC

This package is auto-updated.

Last update: 2025-10-10 13:16:36 UTC


README

Abstraction for system messages

Usage

use Takeoto\Message\Message;
use Takeoto\Message\NoticeMessage;
use Takeoto\Message\ErrorMessage;
use Takeoto\Message\WarningMessage;
use Takeoto\Message\MessagesCollection;

$message = new Message('Hello Earth!');
echo $message; # Hello World!

# --- The message with template variables --------

$message = new Message('Hello {{ planet }}!', [
    '{{ planet }}' => 'Mars 👽',
]);
echo $message; # Hello Mars 👽!"

# --- Messages collection ------------------------

$messages = new MessagesCollection([
    new NoticeMessage('☀️The notice message.'),
    new WarningMessage('⚠️The warning message!'),
    new ErrorMessage(500, 'The error message ‼️'),
]);

if ($messages->getErrors()->count() > 0) {
    throw new \RuntimeException((string)$messages->getErrors()->first());
}