ConsoleApplication
扩展自 Application 实现 CMSApplicationInterfaceJoomla! 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
bootModule
启动具有给定名称的模块。
bootModule( module, applicationName) : \Joomla\CMS\Extension\ModuleInterface
bootPlugin
启动具有给定名称和类型的插件。
bootPlugin( plugin, type) : \Joomla\CMS\Extension\PluginInterface
createExtensionNamespaceMap
允许应用程序加载自定义或默认身份。
createExtensionNamespaceMap() :
自 |
4.0.0 |
---|
响应
void
doExecute
运行应用程序例程的方法。
doExecute() :
自 |
4.0.0 |
---|---|
抛出 |
|
响应
int
应用程序的退出代码
enqueueMessage
将系统消息入队。
enqueueMessage( msg, type = self::MSG_INFO) :
自 |
4.0.0 |
---|
参数
- msg
string
要入队的消息。- type
string
消息类型。
响应
void
execute
执行应用程序。
execute() :
自 |
4.0.0 |
---|---|
抛出 |
|
响应
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 |
---|---|
抛出 |
|
响应
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 |
---|---|
抛出 |
|
响应
DispatcherInterface
getInput
获取应用程序输入对象的方法。
getInput() : \Joomla\Input\Input
自 |
4.0.0 |
---|
响应
Input
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 |
---|---|
抛出 |
|
已弃用 |
4.3 将在 6.0 中删除 将路由器注入或从依赖注入容器中加载它 例如:Factory::getContainer()->get(ApiRouter::class); |
参数
- name
string
应用程序的名称。- options
array<string|int, mixed>
一个可选的关联数组,包含配置设置。
响应
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
扩展的路径
响应
loadIdentity
允许应用程序加载自定义或默认身份。
loadIdentity(\Joomla\CMS\User\User identity = null) :
loadPluginFromFilesystem
从文件系统创建 CMS 插件。
loadPluginFromFilesystem( plugin, type) : \Joomla\CMS\Plugin\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 |
---|---|
抛出 |
|
参数
- 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 |
---|---|
抛出 |
|
已弃用 |
4.0 将在 6.0 中删除 请改用 Dispatcher 方法 例如:Factory::getApplication()->getDispatcher()->dispatch($eventName, $event); |
参数
- eventName
string
事件名称。- args
array<string|int, mixed>|Event
一个参数数组或一个事件对象(可选)。
响应
array<string|int, mixed>
每个函数调用产生的结果数组。请注意,如果未设置调度器,则此数组将为空。
属性
input
输入。
自 |
4.0.0 |
---|
类型
Input
name
应用程序的名称。
自 |
4.0.0 |
---|
类型
string
消息
应用程序消息队列。
自 |
4.0.0 |
---|
类型
array<string|int, mixed>
session
应用程序会话对象。
自 |
4.0.0 |
---|
类型
SessionInterface