Factory

Joomla 平台工厂类。

抽象

1.7.0

Joomla CMS

方法

createConfig

创建一个配置对象

createConfig( file,  type = 'PHP',  namespace = '') : \Joomla\Registry\Registry
静态 已弃用
参见 Registry

1.7.0

已弃用

4.0 版本将从 6.0 版本中移除。使用应用程序中的配置对象。例如:Factory::getApplication->getConfig();

参数

文件

string配置文件的路径。

类型

string配置文件的类型。

命名空间

string配置文件的命名空间。

返回值

Registry

createContainer

创建一个容器对象

createContainer() : \Joomla\DI\Container
静态

4.0.0

返回值

Container

createDbo

创建一个数据库对象

createDbo() : \Joomla\Database\DatabaseDriver
静态 已弃用
参见 DatabaseDriver

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。在 DI 容器中使用数据库服务。例如:Factory::getContainer()->get(DatabaseInterface::class);

返回值

DatabaseDriver

createDocument

创建一个文档对象

createDocument() : \Joomla\CMS\Document\Document
静态 已弃用
参见 Document

1.7.0

已弃用

4.0 版本将从 6.0 版本中移除。从依赖注入容器或通过 $app->getDocument() 加载文档服务。例如:Factory::getContainer()->get(FactoryInterface::class)->createDocument($type, $attributes);

返回值

Document对象

createLanguage

创建一个语言对象

createLanguage() : \Joomla\CMS\Language\Language
静态 已弃用
参见 Language

1.7.0

已弃用

4.0 版本将从 6.0 版本中移除。从依赖注入容器或通过 $app->getLanguage() 加载语言服务。例如:Factory::getContainer()->get(LanguageFactoryInterface::class)->createLanguage($locale, $debug)

返回值

Language对象

createMailer

创建一个邮件发送器对象

createMailer() : \Joomla\CMS\Mail\Mail
静态 已弃用
参见 Mail

1.7.0

已弃用

4.4.0 版本将从 6.0 版本中移除。在 DI 容器中使用邮件发送器服务并从中创建邮件发送器。例如:Factory::getContainer()->get(MailerFactoryInterface::class)->createMailer();

返回值

Mail对象

getApplication

获取全局应用程序对象。如果全局应用程序不存在,则会抛出异常。

getApplication() : \Joomla\CMS\Application\CMSApplicationInterface
静态

1.7.0

抛出

Exception

返回值

CMSApplicationInterface对象

getCache

获取一个缓存对象

getCache( group = '',  handler = 'callback',  storage = null) : \Joomla\CMS\Cache\CacheController
静态 已弃用

返回全局 {@link CacheController} 对象

参见 Cache

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。改为使用缓存控制器工厂。例如:Factory::getContainer()->get(CacheControllerFactoryInterface::class)->createCacheController($handler, $options);

参数

string缓存组名称

处理器

string要使用的处理器

存储

string存储方法

返回值

CacheController对象

getConfig

获取一个配置对象

getConfig( file = null,  type = 'PHP',  namespace = '') : \Joomla\Registry\Registry
静态 已弃用

返回全局 {@link \JConfig} 对象,仅在它不存在时才创建它。

参见 Registry

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。使用应用程序中的配置对象。例如:Factory::getApplication->getConfig();

参数

文件

string配置文件的路径

类型

string配置文件的类型

命名空间

string配置文件的命名空间

返回值

Registry

getContainer

获取一个容器对象

getContainer() : \Joomla\DI\Container
静态

返回全局服务容器对象,仅在它不存在时才创建它。

仅建议在负责创建新服务并需要能够解析依赖项的代码中使用此方法,因此仅当无法通过其他方式访问容器时才应使用此方法。此方法的有效用法包括

  • 一个静态的 getInstance() 方法从容器调用工厂服务,例如 Joomla\CMS\Toolbar\Toolbar::getInstance()
  • 一个应用程序前端控制器加载并执行 Joomla 应用程序类,例如 cli/joomla.php 文件
  • 在过渡期间未注入类的可选构造函数依赖项时检索,以保留向后兼容性,在这种情况下,还应发出弃用通知以通知开发人员其代码中需要进行的更改

不建议将此方法用作静态调用的逐一替换,例如将对 Factory::getDbo() 的调用替换为对 Factory::getContainer()->get(DatabaseInterface::class) 的调用,应重构代码以支持依赖注入而不是进行此更改。

4.0.0

返回值

Container

getDate

返回 {@link Date} 对象

getDate( time = 'now',  tzOffset = null) : \Joomla\CMS\Date\Date
静态
参见 Date

1.7.0

参数

时间

mixedDate 对象的初始时间

时区偏移量

mixed时区偏移量。

返回值

Date对象

getDbo

获取一个数据库对象。

getDbo() : \Joomla\Database\DatabaseDriver
静态 已弃用

返回全局 {@link DatabaseDriver} 对象,仅在它不存在时才创建它。

参见 DatabaseDriver

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。在 DI 容器中使用数据库服务。例如:Factory::getContainer()->get(DatabaseInterface::class);

返回值

DatabaseDriver

getDocument

获取一个文档对象。

getDocument() : \Joomla\CMS\Document\Document
静态 已弃用

返回全局 {@link \Joomla\CMS\Document\Document} 对象,仅在它不存在时才创建它。

参见 Document

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。在 DI 容器中使用数据库服务或从应用程序对象获取。例如:Factory::getApplication()->getDocument();

返回值

Document对象

getLanguage

获取一个语言对象。

getLanguage() : \Joomla\CMS\Language\Language
静态 已弃用

返回全局 {@link Language} 对象,仅在它不存在时才创建它。

参见 Language

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。在 DI 容器中使用语言服务或从应用程序对象获取。例如:Factory::getApplication()->getLanguage();

返回值

Language对象

getMailer

获取一个邮件发送器对象。

getMailer() : \Joomla\CMS\Mail\Mail
静态 已弃用

返回全局 {@link Mail} 对象,仅在它不存在时才创建它。

参见 Mail

1.7.0

已弃用

4.4.0 版本将从 6.0 版本中移除。在 DI 容器中使用邮件发送器服务并从中创建邮件发送器。例如:Factory::getContainer()->get(MailerFactoryInterface::class)->createMailer();

返回值

Mail对象

getSession

获取一个会话对象。

getSession(mixed||string|int options = []) : \Joomla\CMS\Session\Session
静态 已弃用

返回全局 {@link Session} 对象,仅在它不存在时才创建它。

参见 Session

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。在 DI 容器中使用会话服务或从应用程序对象获取。例如:Factory::getApplication()->getSession();

参数

选项

array<string|int, mixed>包含会话选项的数组

返回值

Session对象

getStream

使用适当的前缀创建一个新的流对象

getStream( usePrefix = true,  useNetwork = true,  userAgentSuffix = 'Joomla',  maskUserAgent = false) : \Joomla\CMS\Filesystem\Stream
静态
参见 Stream

1.7.0

参数

使用前缀

bool为写入前缀连接

使用网络

bool如果可用,则使用网络进行写入;使用 false 禁用(例如 FTP、SCP)

用户代理后缀

string要附加到用户代理的字符串

掩盖用户代理

bool用户代理掩盖(前缀 Mozilla)

返回值

Stream

getUser

获取一个用户对象。

getUser( id = null) : \Joomla\CMS\User\User
静态 已弃用

返回全局 {@link User} 对象,仅在它不存在时才创建它。

参见 User

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。从依赖注入容器或从应用程序对象加载用户服务。例如:Factory::getApplication()->getIdentity();

参数

ID

int要加载的用户 - 可以是整数或字符串 - 如果是字符串,则会自动转换为 ID。

返回值

User对象

属性

应用程序

全局应用程序对象

静态

1.7.0

类型

CMSApplicationInterface

缓存

全局缓存对象

静态

1.7.0

类型

Cache

配置

全局配置对象

静态 已弃用

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。使用应用程序中的配置对象。例如:Factory::getApplication()->getConfig();

类型

JConfig

容器

全局容器对象

静态

4.0.0

类型

Container

日期

Date 实例的容器

静态

1.7.3

类型

array<string|int, mixed>

会话

全局会话对象

静态 已弃用

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。在 DI 容器中使用会话服务或从应用程序对象获取。例如:Factory::getApplication()->getSession();

类型

Session

语言

全局语言对象

静态 已弃用

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。在 DI 容器中使用语言服务或从应用程序对象获取。例如:Factory::getApplication()->getLanguage();

类型

Language

文档

全局文档对象

静态 已弃用

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。在 DI 容器中使用数据库服务或从应用程序对象获取。例如:Factory::getApplication()->getDocument();

类型

Document

数据库

全局数据库对象

静态 已弃用

1.7.0

已弃用

4.3 版本将从 6.0 版本中移除。在 DI 容器中使用数据库服务。例如:Factory::getContainer()->get(DatabaseInterface::class);

类型

DatabaseDriver

邮件发送器

全局邮件发送器对象

静态

1.7.0

类型

Mail