ConsoleApplication

扩展自 Application 实现 CMSApplicationInterface

Joomla! CMS 控制台应用程序

4.0.0

Joomla CMS

方法

__construct

类构造函数。

__construct(\Joomla\Registry\Registry config, \Joomla\Event\DispatcherInterface dispatcher, \Joomla\DI\Container container, \Joomla\CMS\Language\Language language, \Symfony\Component\Console\Input\InputInterface|null input = null, \Symfony\Component\Console\Output\OutputInterface|null output = null) : 

4.0.0

参数

config

Registry一个可选参数,用于为应用程序的配置对象提供依赖注入。如果参数是 Registry 对象,则该对象将成为应用程序的配置对象,否则将创建一个默认的配置对象。

dispatcher

DispatcherInterface一个可选参数,用于为应用程序的事件调度器提供依赖注入。如果参数是 DispatcherInterface 对象,则该对象将成为应用程序的事件调度器,如果为 null,则将根据应用程序的 loadDispatcher() 方法创建默认事件调度器。

container

Container依赖注入容器。

language

Language为应用程序提供的语言对象。

input

InputInterface|null一个可选参数,用于为应用程序的输入对象提供依赖注入。如果参数是 InputInterface 对象,则该对象将成为应用程序的输入对象,否则将创建一个默认的输入对象。

output

OutputInterface|null一个可选参数,用于为应用程序的输出对象提供依赖注入。如果参数是 OutputInterface 对象,则该对象将成为应用程序的输出对象,否则将创建一个默认的输出对象。

响应

混合

__get

用于访问应用程序属性的魔术方法。

__get( name) : 
已弃用

4.0.0

已弃用

4.0 将在 6.0 中删除 这是一个用于已弃用读取访问的 B/C 代理,请改用 getInput() 方法 例如:$app->getInput();

参数

name

string属性的名称。

响应

mixed如果属性名称有效,则为一个值,否则为 null。

bootComponent

启动具有给定名称的组件。

bootComponent( component) : \Joomla\CMS\Extension\ComponentInterface
继承

4.0.0

参数

component

string要启动的组件。

响应

ComponentInterface

bootModule

启动具有给定名称的模块。

bootModule( module,  applicationName) : \Joomla\CMS\Extension\ModuleInterface
继承

4.0.0

参数

module

string要启动的模块

applicationName

string应用程序名称

响应

ModuleInterface

bootPlugin

启动具有给定名称和类型的插件。

bootPlugin( plugin,  type) : \Joomla\CMS\Extension\PluginInterface
继承

4.0.0

参数

plugin

string插件名称

type

string插件的类型

响应

PluginInterface

createExtensionNamespaceMap

允许应用程序加载自定义或默认身份。

createExtensionNamespaceMap() : 
继承

4.0.0

响应

void

doExecute

运行应用程序例程的方法。

doExecute() : 

4.0.0

抛出

Throwable

响应

int应用程序的退出代码

enqueueMessage

将系统消息入队。

enqueueMessage( msg,  type = self::MSG_INFO) : 

4.0.0

参数

msg

string要入队的消息。

type

string消息类型。

响应

void

execute

执行应用程序。

execute() : 

4.0.0

抛出

Throwable

响应

void

flushAssets

刷新媒体版本以刷新可版本化的资源

flushAssets() : 

4.0.0

响应

void

getConfig

检索应用程序配置对象。

getConfig() : \Joomla\Registry\Registry

4.0.0

响应

Registry

getContainer

获取 DI 容器。

getContainer() : \Joomla\DI\Container
继承 抽象

4.0.0

抛出

ContainerNotFoundException如果未设置容器,则可能会抛出。

响应

Container

getDefaultCommands

获取默认情况下应注册到应用程序的命令。

getDefaultCommands() : \Joomla\Console\Command\AbstractCommand||string|int

4.0.0

响应

array<string|int, AbstractCommand>

getDefaultInputDefinition

构建默认输入定义。

getDefaultInputDefinition() : \Symfony\Component\Console\Input\InputDefinition

4.2.1

响应

InputDefinition

getDispatcher

获取事件调度器。

getDispatcher() : \Joomla\Event\DispatcherInterface
继承 抽象

4.0.0

抛出

UnexpectedValueException如果未设置调度器,则可能会抛出。

响应

DispatcherInterface

getIdentity

获取应用程序身份。

getIdentity() : \Joomla\CMS\User\User
继承

4.0.0

响应

User

getInput

获取应用程序输入对象的方法。

getInput() : \Joomla\Input\Input

4.0.0

响应

Input

getLanguage

获取应用程序语言对象的方法。

getLanguage() : \Joomla\CMS\Language\Language

4.0.0

响应

Language语言对象

getLogger

获取日志记录器。

getLogger() : \Psr\Log\LoggerInterface
继承 抽象

4.0.0

响应

LoggerInterface

getLongVersion

获取应用程序的完整版本字符串。

getLongVersion() : 

覆盖父方法,因为控制台应用程序和 CMS 应用程序接口之间对 getName 方法的使用存在冲突。

4.0.0

响应

string

getMessageQueue

获取系统消息队列。

getMessageQueue() : mixed||string|int

4.0.0

响应

array<string|int, mixed>系统消息队列。

getName

获取当前正在运行的应用程序的名称。

getName() : 

4.0.0

响应

string应用程序的名称。

getRouter

返回应用程序路由器对象。

getRouter( name = null, mixed||string|int options = []) : \Joomla\CMS\Router\Router
静态 已弃用

4.0.6

抛出

InvalidArgumentException

已弃用

4.3 将在 6.0 中删除 将路由器注入或从依赖注入容器中加载它 例如:Factory::getContainer()->get(ApiRouter::class);

参数

name

string应用程序的名称。

options

array<string|int, mixed>一个可选的关联数组,包含配置设置。

响应

Router

getSession

获取应用程序会话对象的方法。

getSession() : \Joomla\Session\SessionInterface

4.0.0

响应

SessionInterface会话对象

getUserState

获取用户状态。

getUserState( key,  default = null) : 

4.4.0

参数

key

string状态的路径。

default

mixed可选的默认值,如果内部值为 null,则返回。

响应

mixed用户状态或 null。

getUserStateFromRequest

获取用户状态变量的值。

getUserStateFromRequest( key,  request,  default = null,  type = 'none') : 

4.4.0

参数

key

string用户状态变量的键。

request

string请求中传递的变量的名称。

default

string如果未找到变量,则为默认值。可选。

type

string变量的过滤器,有关有效值,请参阅 {@link InputFilter::clean()}。可选。

响应

mixed请求用户状态。

isCli

应用程序实例是 CLI 还是基于 Web 的应用程序的标志。

isCli() : 
已弃用

辅助函数,您应该使用本机 PHP 函数来检测它是否为 CLI 应用程序。

4.0.0

已弃用

4.0 将在 6.0 中删除 将在不替换的情况下删除。CLI 将由 joomla/console 包处理

响应

bool

isClient

按名称检查客户端接口。

isClient( identifier) : 

4.0.0

参数

identifier

string应用程序接口的字符串标识符

响应

bool如果此应用程序属于给定类型的客户端接口,则为 True。

loadExtension

加载扩展。

loadExtension( type,  extensionName,  extensionPath) : \Joomla\CMS\Extension\ComponentInterface|\Joomla\CMS\Extension\ModuleInterface|\Joomla\CMS\Extension\PluginInterface
继承

4.0.0

参数

type

string扩展类型

extensionName

string扩展名称

extensionPath

string扩展的路径

响应

ComponentInterface|ModuleInterface|PluginInterface

loadIdentity

允许应用程序加载自定义或默认身份。

loadIdentity(\Joomla\CMS\User\User identity = null) : 
继承

4.0.0

参数

identity

User一个可选的身份对象。如果省略,则创建 null 用户对象。

响应

$this

loadPluginFromFilesystem

从文件系统创建 CMS 插件。

loadPluginFromFilesystem( plugin,  type) : \Joomla\CMS\Plugin\CMSPlugin
继承

4.0.0

参数

plugin

string插件

type

string类型

响应

CMSPlugin

populateHttpHost

根据 --live-site 参数中提供的 URL 填充 HTTP_HOST 和 REQUEST_URI。

populateHttpHost() : 

如果提供的 URL 为空或无效,我们将使用 URL https://joomla.invalid/set/by/console/application,以便在其中实例化 WebApplication 子类时,CLI 应用程序不会崩溃。

这是一种实用的解决方法,用于在 CLI 下使用任何依赖于 WebApplication 子类的服务。

实际示例:使用组件的 MVCFactory,它实例化该组件的 SiteRouter 服务,而该服务又依赖于 SiteApplication 的实例。

4.2.1

link

响应

void

registerEvent

向特定事件组注册处理程序。

registerEvent( event, 
Warning: Array to string conversion in /opt/phpdoc/vendor/twig/twig/src/Extension/CoreExtension.php on line 768
|Array handler) : 
继承

4.0.0

参数

event

string事件名称。

handler

callable处理程序,一个函数或事件对象的实例。

响应

$this

setName

设置应用程序的名称。

setName( name) : 

4.0.0

抛出

RuntimeException因为应用程序名称无法更改

参数

name

string新的应用程序名称。

响应

void

setSession

设置应用程序要使用的会话(如果需要)。

setSession(\Joomla\Session\SessionInterface session) : 

4.0.0

参数

session

SessionInterface会话对象。

响应

$this

triggerEvent

调用与事件组关联的所有处理程序。

triggerEvent( eventName, array|\Joomla\Event\Event args = []) : mixed||string|int
继承 已弃用

这是一个旧方法,实现了旧样式(Joomla! 3.x)的插件调用。最好直接通过 Dispatcher 处理返回的 EventInterface 对象,而不是通过此方法。此方法已弃用,将在 Joomla! 5.x 中删除。

此方法将仅返回事件的“result”参数

4.0.0

抛出

InvalidArgumentException

已弃用

4.0 将在 6.0 中删除 请改用 Dispatcher 方法 例如:Factory::getApplication()->getDispatcher()->dispatch($eventName, $event);

参数

eventName

string事件名称。

args

array<string|int, mixed>|Event一个参数数组或一个事件对象(可选)。

响应

array<string|int, mixed>每个函数调用产生的结果数组。请注意,如果未设置调度器,则此数组将为空。

属性

identity

应用程序标识对象。

继承

4.0.0

类型

User

input

输入。

4.0.0

类型

Input

name

应用程序的名称。

4.0.0

类型

string

language

应用程序语言对象。

4.0.0

类型

语言

消息

应用程序消息队列。

4.0.0

类型

array<string|int, mixed>

session

应用程序会话对象。

4.0.0

类型

SessionInterface