本文整理汇总了PHP中JRouter::attachBuildRule方法的典型用法代码示例。如果您正苦于以下问题:PHP JRouter::attachBuildRule方法的具体用法?PHP JRouter::attachBuildRule怎么用?PHP JRouter::attachBuildRule使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JRouter
的用法示例。
在下文中一共展示了JRouter::attachBuildRule方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testStagesAreProcessedInCorrectOrder
/**
* @param string $url The URL
* @param string $expected Expected return value
*
* @dataProvider casesProcessBuildRulesOrder
*
* @since 4.0
*/
public function testStagesAreProcessedInCorrectOrder($url, $expected)
{
$this->object->attachBuildRule(function (JRouter $router, JUri $uri) {
$uri->setVar('var1', 'before');
$uri->setVar('var3', 'before');
$uri->setVar('var4', 'before');
}, JRouter::PROCESS_BEFORE);
$this->object->attachBuildRule(function (JRouter $router, JUri $uri) {
$uri->setVar('var1', 'during');
$uri->setVar('var4', 'during');
$uri->setVar('var5', 'during');
}, JRouter::PROCESS_DURING);
$this->object->attachBuildRule(function (JRouter $router, JUri $uri) {
$uri->setVar('var1', 'after');
$uri->setVar('var5', 'after');
}, JRouter::PROCESS_AFTER);
$this->assertEquals($expected, (string) $this->object->build($url));
}
示例2: testAttachBuildRuleException
/**
* Tests the attachBuildRule() method throwing a proper exception
*
* @return void
*
* @since 3.4
* @expectedException InvalidArgumentException
*/
public function testAttachBuildRuleException()
{
$callback = array(function (&$router, &$uri) {
});
$this->object->attachBuildRule($callback, 'wrongStage');
}