The model observer component for Hyperf.
composer require friendsofhyperf/model-observer- Generator command
php bin/hyperf.php gen:observer TestObserver --model="App\\Model\\User"- Single binding
namespaceApp\Observer;
useApp\Model\User;
useFriendsOfHyperf\ModelObserver\Annotation\Observer;
#[Observer(model: User::class)]
class FooObserver
{
publicfunctioncreating(User$model)
{
// do sth...
}
publicfunctioncreated(User$model)
{
// do sth...
}
// another events
}- Multiple binding
namespaceApp\Observer;
useApp\Model\Post;
useApp\Model\User;
useFriendsOfHyperf\ModelObserver\Annotation\Observer;
#[Observer(model: [User::class, Post::class])]
class FooObserver
{
publicfunctioncreating($model)
{
// do sth...
}
publicfunctioncreated($model)
{
// do sth...
}
// another events
}- Binding on model
namespaceApp\Model;
useApp\Observer\FooObserver;
#[ObservedBy(FooObserver::class)]
class User extends Model
{
// ...
}bootingbootedretrievedcreatingcreatedupdatingupdatedsavingsavedrestoringrestoreddeletingdeletedforceDeleted