Final Class Yiisoft\ActiveRecord\Event\Handler\DefaultDateTimeOnInsert
| Inheritance | Yiisoft\ActiveRecord\Event\Handler\DefaultDateTimeOnInsert » Yiisoft\ActiveRecord\Event\Handler\DefaultValueOnInsert » Yiisoft\ActiveRecord\Event\Handler\AttributeHandlerProvider |
|---|
Attribute for setting default value of the date and time for properties before inserting a new record into
the database. By default, it sets the current date and time to the created_at and updated_at properties.
It can be applied to classes or properties, and it can be repeated for multiple properties.
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | Yiisoft\ActiveRecord\Event\Handler\DefaultDateTimeOnInsert | |
| getEventHandlers() | Yiisoft\ActiveRecord\Event\Handler\DefaultValueOnInsert | |
| getPropertyNames() | Returns the list of property names the handler should be applied to. | Yiisoft\ActiveRecord\Event\Handler\AttributeHandlerProvider |
| setPropertyNames() | Sets the list of property names the handler should be applied to. | Yiisoft\ActiveRecord\Event\Handler\AttributeHandlerProvider |
Method Details
| public mixed __construct ( mixed $value = null, string $propertyNames ) | ||
| $value | mixed | |
| $propertyNames | string | |
public function __construct(
mixed $value = null,
string ...$propertyNames,
) {
$value ??= static fn(): DateTimeImmutable => new DateTimeImmutable();
if (empty($propertyNames)) {
$propertyNames = ['created_at', 'updated_at'];
}
parent::__construct($value, ...$propertyNames);
}
| public array getEventHandlers ( ) |
public function getEventHandlers(): array
{
return [
BeforeInsert::class => $this->beforeInsert(...),
BeforeUpsert::class => $this->beforeUpsert(...),
];
}
Defined in: Yiisoft\ActiveRecord\Event\Handler\AttributeHandlerProvider::getPropertyNames()
Returns the list of property names the handler should be applied to.
| public string[] getPropertyNames ( ) |
public function getPropertyNames(): array
{
return $this->propertyNames;
}
Defined in: Yiisoft\ActiveRecord\Event\Handler\AttributeHandlerProvider::setPropertyNames()
Sets the list of property names the handler should be applied to.
| public void setPropertyNames ( string[] $propertyNames ) | ||
| $propertyNames | string[] | |
public function setPropertyNames(array $propertyNames): void
{
$this->propertyNames = $propertyNames;
}
Signup or Login in order to comment.