BeforeInstallerEvent

扩展 InstallerEvent 实现 ResultAwareInterface

安装程序事件的类

5.0.0

Joomla CMS

方法

__construct

构造函数。

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

BadMethodCallException

5.0.0

参数

名称

string事件名称。

参数

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

响应

混合

addResult

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

addResult( data) : 
继承

4.2.0

参数

数据

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

响应

create

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

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

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

4.0.0

抛出

BadMethodCallException如果您没有提供主题参数

参数

事件名称

string事件的名称,例如 onTableBeforeLoad

参数

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

响应

静态

getArgument

获取事件参数值。

getArgument( name,  default = null) : 
继承

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

onGet<ArgumentName>($value): mixed

其中

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

4.0.0

参数

名称

string参数名称。

默认

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

响应

mixed参数值或默认值。

getEventClassByEventName

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

getEventClassByEventName( eventName) : 
继承 静态

如果此特性未知事件名称,则此方法将回退到通用 Joomla\Event\Event 类。

4.2.0

参数

事件名称

string事件名称

响应

string事件类名称

getModel

模型的 Getter。

getModel() : \Joomla\CMS\MVC\Model\BaseModel
继承

5.0.0

响应

BaseModel

getPackage

包的 Getter。

getPackage() : array
继承

5.0.0

响应

array<string|int, mixed>|null

offsetSet

设置事件参数的值。

offsetSet( name,  value) : 
继承

4.0.0

抛出

BadMethodCallException

参数

名称

string参数名称。

mixed参数值。

响应

offsetUnset

删除事件参数。

offsetUnset( name) : 
继承

4.0.0

抛出

BadMethodCallException

参数

名称

string参数名称。

响应

onSetPackage

包参数的 Setter。

onSetPackage(array value) : array
继承

5.0.0

参数

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

响应

array<string|int, mixed>|null

onSetResult

处理直接设置结果参数。

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

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

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

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

4.4.0

参数

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

响应

array<string|int, mixed>

onSetSubject

主题参数的 Setter。

onSetSubject(\Joomla\CMS\MVC\Model\BaseModel value) : \Joomla\CMS\MVC\Model\BaseModel
继承

5.0.0

参数

BaseModel要设置的值

响应

BaseModel

reshapeArguments

重塑参数数组以保持与旧版侦听器的兼容性

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

4.2.0

参数

参数

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

参数名称

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

默认值

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

响应

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

setArgument

向事件添加参数。

setArgument( name,  value) : 
继承

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

onSet<ArgumentName>($value): mixed

其中

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

4.0.0

参数

名称

string参数名称。

mixed值。

响应

$this

setResult

处理直接设置结果参数。

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

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

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

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

4.2.0

已弃用

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

参数

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

响应

array<string|int, mixed>

updatePackage

更新包。

updatePackage(array value) : 
继承

5.0.0

参数

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

响应

静态

属性

eventNameToConcreteClass

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

继承 静态

这只适用于事件名称不变的事件。事件名称可变的事件在 getEventClassByEventName 类中使用 PHP 逻辑进行处理。

4.2.0

类型(s)

array<string|int, mixed>

构造

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

继承

4.0.0

类型(s)

布尔

legacyArgumentsOrder

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

继承 已弃用

5.0.0

已弃用

5.0 将在 6.0 中删除

类型(s)

array<string|int, mixed>

resultIsNullable

结果属性值也可以为 NULL 吗?

继承

4.2.0

类型(s)

布尔

preventSetArgumentResult

不允许使用 setArgument() 直接设置结果参数,而是通过 addResult() 进行设置。

继承 已弃用

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

4.2.0

已弃用

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

类型(s)

布尔