abstract_moodle_entity extends abstract_entity
Base class for Moodle native entities.
Table of Contents
Properties
- $id : int
- $timecreated : int
- $timemodified : int
Methods
- __call() : mixed
- Magic accessor to support get_* and with_* helpers for entity properties.
- __get() : mixed
- Magic getter to allow reading protected properties.
- __isset() : bool
- Magic isset to allow checking protected properties.
- __set() : void
- Magic setter.
- as_std_class() : stdClass
- Returns the entity as stdClass (alias for to_record).
- from_record() : static
- Factory method to create an entity from a Moodle record.
- get_id() : null|int
- Get the entity unique identifier.
- get_table() : string
- Returns the Moodle database table name.
- get_timecreated() : int
- Get entity creation timestamp.
- get_timemodified() : int
- Get entity modification timestamp.
- jsonSerialize() : array<string, mixed>
- Serializes the object to a value that can be natively serialized by json_encode().
- to_array() : array<string, mixed>
- Implementation for entity_interface.
- to_record() : stdClass
- Converts the entity to a stdClass record for Moodle APIs.
- with_id() : $this
- Set entity identifier.
- with_timecreated() : $this
- Set entity creation timestamp.
- with_timemodified() : $this
- Set entity modification timestamp.
- cast_value() : mixed
- Cast a value to match the property type.
- get_all_properties() : array<string, ReflectionProperty>
- Get all instance properties (including private and inherited).
- write_property() : void
- Write a property value regardless of visibility.
Properties
$id
protected
int
$id
= 0
$timecreated
protected
int
$timecreated
= 0
$timemodified
protected
int
$timemodified
= 0
Methods
__call()
Magic accessor to support get_* and with_* helpers for entity properties.
public
__call(string $name, array<string|int, mixed> $arguments) : mixed
Parameters
- $name : string
- $arguments : array<string|int, mixed>
__get()
Magic getter to allow reading protected properties.
public
__get(string $name) : mixed
Parameters
- $name : string
-
Property name
__isset()
Magic isset to allow checking protected properties.
public
__isset(string $name) : bool
Parameters
- $name : string
-
Property name
Return values
bool__set()
Magic setter.
public
__set(string $name, mixed $value) : void
Parameters
- $name : string
-
Property name
- $value : mixed
-
Value
as_std_class()
Returns the entity as stdClass (alias for to_record).
public
as_std_class() : stdClass
Return values
stdClassfrom_record()
Factory method to create an entity from a Moodle record.
public
static from_record(array<string|int, mixed>|stdClass $record) : static
Automatically casts values to match property types (int, string, etc.) since Moodle's database layer often returns numeric values as strings.
Parameters
- $record : array<string|int, mixed>|stdClass
Return values
staticget_id()
Get the entity unique identifier.
public
get_id() : null|int
Return values
null|intget_table()
Returns the Moodle database table name.
public
abstract static get_table() : string
Return values
stringget_timecreated()
Get entity creation timestamp.
public
get_timecreated() : int
Return values
intget_timemodified()
Get entity modification timestamp.
public
get_timemodified() : int
Return values
intjsonSerialize()
Serializes the object to a value that can be natively serialized by json_encode().
public
jsonSerialize() : array<string, mixed>
Tags
Return values
array<string, mixed>to_array()
Implementation for entity_interface.
public
to_array() : array<string, mixed>
Return values
array<string, mixed>to_record()
Converts the entity to a stdClass record for Moodle APIs.
public
to_record() : stdClass
Return values
stdClasswith_id()
Set entity identifier.
public
with_id(null|int $id) : $this
Parameters
- $id : null|int
Return values
$thiswith_timecreated()
Set entity creation timestamp.
public
with_timecreated(int $timecreated) : $this
Parameters
- $timecreated : int
Return values
$thiswith_timemodified()
Set entity modification timestamp.
public
with_timemodified(int $timemodified) : $this
Parameters
- $timemodified : int
Return values
$thiscast_value()
Cast a value to match the property type.
private
static cast_value(object $entity, string $property, mixed $value) : mixed
Parameters
- $entity : object
- $property : string
- $value : mixed
get_all_properties()
Get all instance properties (including private and inherited).
private
get_all_properties(object $entity) : array<string, ReflectionProperty>
Parameters
- $entity : object
Return values
array<string, ReflectionProperty>write_property()
Write a property value regardless of visibility.
private
static write_property(object $entity, string $property, mixed $value) : void
Parameters
- $entity : object
- $property : string
- $value : mixed