AfterChangeStateEvent

扩展 ChangeStateEvent 实现 ResultAwareInterface

用于模型事件的类。

示例:new AfterChangeStateEvent('onEventName', ['context' => 'com_example.example', 'subject' => $primaryKeys, 'value' => $newState]);

5.0.0

Joomla CMS

方法

__construct

构造函数。

__construct( name, mixed||string|int arguments = []) : 
继承
抛出

BadMethodCallException

5.0.0

参数

name

string事件名称。

arguments

array<string|int, mixed>事件参数。

响应

混合

addResult

将数据追加到事件的结果数组。

addResult( data) : 
继承

4.2.0

参数

data

mixed要添加到结果数组的内容。

响应

void

create

为给定事件名称和主题创建一个新的 CMS 事件对象。 必须提供以下参数: subject 对象 事件的主题。 这是要操作的核心对象。

create( eventName, mixed||string|int arguments = []) : 
继承 静态

eventClass 字符串 事件类名称。 如果未提供,将使用 Joomla\CMS\Events<eventNameWithoutOnPrefix>。

4.0.0

抛出

BadMethodCallException如果未提供主题参数

参数

eventName

string事件名称,例如 onTableBeforeLoad

arguments

array<string|int, mixed>要传递给事件的其他参数

响应

静态

getArgument

获取事件参数值。

getArgument( name,  default = null) : 
继承

如果存在,它将使用预处理方法。 该方法的签名为

onGet<ArgumentName>($value): mixed

其中

$value 是当前存储在事件 $arguments 数组中的值 它返回要返回给调用者的值。

4.0.0

参数

name

string参数名称。

default

mixed如果未找到,则为默认值。

响应

mixed参数值或默认值。

getContext

context 参数的 Getter。

getContext() : 
继承

5.0.0

响应

string

getEventClassByEventName

获取给定事件名称的具体事件类名称。

getEventClassByEventName( eventName) : 
继承 静态

如果此特质不识别事件名称,此方法将回退到通用 Joomla\Event\Event 类。

4.2.0

参数

eventName

string事件名称

响应

string事件类名称

getPks

主键列表的 Getter。

getPks() : mixed||string|int
继承

5.0.0

响应

array<string|int, mixed>

getValue

状态值的 Getter。

getValue() : 
继承

5.0.0

响应

int

offsetSet

设置事件参数的值。

offsetSet( name,  value) : 
继承

4.0.0

抛出

BadMethodCallException

参数

name

string参数名称。

value

mixed参数值。

响应

void

offsetUnset

删除事件参数。

offsetUnset( name) : 
继承

4.0.0

抛出

BadMethodCallException

参数

name

string参数名称。

响应

void

onSetContext

context 参数的 Setter。

onSetContext( value) : 
继承

5.0.0

参数

value

string要设置的值

响应

string

onSetResult

处理直接设置 result 参数。

onSetResult(mixed||string|int value) : mixed||string|int
继承

此方法具有双重目的: 向后兼容性和强制使用 addResult。

当 $this->preventSetArgumentResult 为 false 时,它充当事件处理程序的向后兼容性垫片,这些事件处理程序希望使用通用事件类,而不是此包中实现的具体 Events。 这允许在 Joomla 4.x 的整个生命周期中迁移到具体事件类。

当 $this->preventSetArgumentResult 为 false(在 Joomla 5.0 上始终如此)时,如果开发者尝试调用 setArgument('result', ...) 而不是通过 addResult() 方法,它将抛出 BadMethodCallException。

4.4.0

参数

value

array<string|int, mixed>新的结果数组。

响应

array<string|int, mixed>

onSetSubject

subject 参数的 Setter。

onSetSubject(mixed||string|int value) : mixed||string|int
继承

5.0.0

参数

value

array<string|int, mixed>要设置的值

响应

array<string|int, mixed>

onSetValue

value 参数的 Setter。

onSetValue( value) : 
继承

5.0.0

参数

value

int要设置的值

响应

int

reshapeArguments

重塑参数数组以保留与旧版侦听器的 b/c

reshapeArguments(mixed||string|int arguments, mixed||string|int argumentNames, mixed||string|int defaults = []) : mixed||string|int
继承

4.2.0

参数

arguments

array<string|int, mixed>传递给构造函数的命名参数数组。

argumentNames

array<string|int, mixed>允许的参数名称(强制性和可选的)。

defaults

array<string|int, mixed>可选参数的默认值。

响应

array<string|int, mixed>重塑的参数。

setArgument

向事件添加参数。

setArgument( name,  value) : 
继承

如果存在,它将使用预处理方法。 该方法的签名为

onSet<ArgumentName>($value): mixed

其中

$value 是用户设置的值 它返回要返回以设置在事件的 $arguments 数组中的值。

4.0.0

参数

name

string参数名称。

value

mixed值。

响应

$this

setResult

处理直接设置 result 参数。

setResult(mixed||string|int value) : mixed||string|int
继承 已弃用

此方法具有双重目的: 向后兼容性和强制使用 addResult。

当 $this->preventSetArgumentResult 为 false 时,它充当事件处理程序的向后兼容性垫片,这些事件处理程序希望使用通用事件类,而不是此包中实现的具体 Events。 这允许在 Joomla 4.x 的整个生命周期中迁移到具体事件类。

当 $this->preventSetArgumentResult 为 false(在 Joomla 5.0 上始终如此)时,如果开发者尝试调用 setArgument('result', ...) 而不是通过 addResult() 方法,它将抛出 BadMethodCallException。

4.2.0

已弃用

4.4.0 将在 6.0 中删除 使用带 onSet 前缀的对应项

参数

value

array<string|int, mixed>新的结果数组。

响应

array<string|int, mixed>

属性

eventNameToConcreteClass

将事件名称映射到具体 Event 类。

继承 静态

这仅适用于具有不变名称的事件。 具有可变名称的事件通过 getEventClassByEventName 类中的 PHP 逻辑处理。

4.2.0

类型

array<string|int, mixed>

constructed

一个标志,用于查看构造函数是否已被调用。

继承

4.0.0

类型

bool

legacyArgumentsOrder

旧版插件期望的参数名称,按顺序。

继承 已弃用

5.0.0

已弃用

5.0 将在 6.0 中删除

类型

array<string|int, mixed>

resultIsNullable

result 属性值也可以为 NULL 吗?

继承

4.2.0

类型

bool

preventSetArgumentResult

禁止使用 setArgument() 直接设置 result 参数,而不是通过 addResult() 进行设置。

继承 已弃用

您应仅为在 Joomla 4.2.0 之前不存在的事件名称或您是第三方开发者为仅在您的软件中使用而引入新的事件名称,将此设置为 true。

4.2.0

已弃用

4.3 将在 6.0 中删除 使用 setResult() 设置 result 参数将始终被禁止。

类型

bool