SiteRouter
继承自 Router用于创建和解析站点应用程序路由的类
自 |
1.5 |
---|---|
包 |
Joomla CMS |
方法
__construct
类构造函数
__construct(\Joomla\CMS\Application\CMSApplication app = null, \Joomla\CMS\Menu\AbstractMenu menu = null) :
attachBuildRule
附加构建规则
attachBuildRule( Warning: Array to string conversion in /opt/phpdoc/vendor/twig/twig/src/Extension/CoreExtension.php on line 768 |Array callback, stage = self::PROCESS_DURING) :
自 |
1.5 |
---|
参数
- 回调
callable
要调用的函数- 阶段
string
应将此规则添加到其中的构建过程阶段。可能的值:'preprocess','' 表示主构建过程,'postprocess'
响应
空
attachParseRule
附加解析规则
attachParseRule( Warning: Array to string conversion in /opt/phpdoc/vendor/twig/twig/src/Extension/CoreExtension.php on line 768 |Array callback, stage = self::PROCESS_DURING) :
自 |
1.5 |
---|
参数
- 回调
callable
要调用的函数。- 阶段
string
应将此规则添加到其中的解析过程阶段。可能的值:'preprocess','' 表示主解析过程,'postprocess'
响应
空
build
用于将内部 URI 转换为路由的函数
build(string|array|\Joomla\CMS\Uri\Uri url) : \Joomla\CMS\Uri\Uri
buildBase
将基本路径添加到 URI
buildBase(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
buildComponentPreprocess
运行组件预处理方法
buildComponentPreprocess(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
buildFormat
构建请求格式
buildFormat(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
buildInit
对构建 URL 进行一些初始处理
buildInit(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
buildPaginationData
转换分页限制
buildPaginationData(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
buildRewrite
基于完整或部分 URL 字符串创建 URI
buildRewrite(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
buildSefRoute
构建 SEF 路由
buildSefRoute(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
createUri
基于完整或部分 URL 字符串创建 URI
createUri( url) : \Joomla\CMS\Uri\Uri
detachRule
移除规则
detachRule( type, Warning: Array to string conversion in /opt/phpdoc/vendor/twig/twig/src/Extension/CoreExtension.php on line 768 |Array rule, stage = self::PROCESS_DURING) :
自 |
4.0.0 |
---|---|
抛出 |
|
参数
- 类型
string
要移除的规则类型(解析或构建)- 规则
callable
要移除的规则。- 阶段
string
应将此规则添加到其中的解析过程阶段。可能的值:'preprocess','' 表示主解析过程,'postprocess'
响应
bool
是否已移除规则?
getComponentRouter
获取组件路由器
getComponentRouter( component) : \Joomla\CMS\Component\Router\RouterInterface
getInstance
返回全局路由器对象,仅在对象不存在时创建。
getInstance( client, mixed||string|int options = []) : \Joomla\CMS\Router\Router
自 |
1.5 |
---|---|
抛出 |
|
已弃用 |
4.0 将在 6.0 中移除。注入路由器或从依赖项注入容器中加载路由器。示例:Factory::getContainer()->get(SiteRouter::class); |
参数
- client
string
客户端的名称- options
array<string|int, mixed>
选项的关联数组
响应
Router
路由器对象。
getRules
获取所有当前附加的规则
getRules() : mixed||string|int
自 |
4.0.0 |
---|
响应
array<string|int, mixed>
所有当前附加的规则,以数组形式
getVar
获取路由器变量
getVar( key) :
自 |
1.5 |
---|
参数
- key
string
变量的名称
响应
mixed
变量的值
getVars
获取路由器变量数组
getVars() : mixed||string|int
自 |
1.5 |
---|
响应
array<string|int, mixed>
路由器变量的关联数组
parse
用于将路由转换为内部 URI 的函数
parse(\Joomla\CMS\Uri\Uri &uri, setVars = false) : mixed||string|int
parseCheckSSL
强制使用 SSL
parseCheckSSL(\Joomla\CMS\Router\Router &router, \Joomla\CMS\Uri\Uri &uri) :
parseFormat
解析请求格式
parseFormat(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
parseInit
在解析 URL 之前进行一些初始清理
parseInit(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
parsePaginationData
转换分页限制
parsePaginationData(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
parseRawRoute
将原始路由转换为内部 URI
parseRawRoute(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
parseSefRoute
将 sef 路由转换为内部 URI
parseSefRoute(\Joomla\CMS\Router\SiteRouter &router, \Joomla\CMS\Uri\Uri &uri) :
processBuildRules
基于自定义定义的规则处理构建的 uri 查询数据
processBuildRules(\Joomla\CMS\Uri\Uri &uri, stage = self::PROCESS_DURING) :
processParseRules
基于自定义定义的规则处理已解析的路由器变量
processParseRules(\Joomla\CMS\Uri\Uri &uri, stage = self::PROCESS_DURING) :
setComponentRouter
为组件设置路由器
setComponentRouter( component, router) :
自 |
3.3 |
---|
参数
- component
string
带 com_ 前缀的组件名称- router
object
组件路由器
响应
bool
如果路由器已接受,则为 True,否则为 False
setVar
设置路由器变量,如果变量不存在则创建变量
setVar( key, value, create = true) :
自 |
1.5 |
---|
参数
- key
string
变量的名称- value
mixed
变量的值- create
bool
如果为 True,则如果变量尚不存在,则会创建变量
响应
空
setVars
设置路由器变量数组
setVars(mixed||string|int vars = [], merge = true) :
自 |
1.5 |
---|
参数
- vars
array<string|int, mixed>
包含变量的关联数组- merge
bool
如果为 True,则会合并数组,而不是覆盖数组
响应
空
常量
PROCESS_BEFORE
用于预处理阶段的掩码
值 | 'preprocess' |
---|---|
自 |
3.4 |
类型
string
PROCESS_DURING
用于处理过程阶段的掩码
值 | '' |
---|---|
自 |
3.4 |
类型
string
PROCESS_AFTER
用于后处理阶段的掩码
值 | 'postprocess' |
---|---|
自 |
3.4 |
类型
string
属性
vars
变量数组
自 |
1.5 |
---|
类型
array<string|int, mixed>
rules
规则数组
自 |
1.5 |
---|
类型
array<string|int, mixed>
cache
已处理 URI 的缓存
自 |
3.3 |
---|
类型
array<string|int, mixed>
componentRouters
组件路由器对象
自 |
3.3 |
---|
类型
array<string|int, mixed>