本文整理汇总了PHP中Phalcon\Mvc\Dispatcher::getControllerClass方法的典型用法代码示例。如果您正苦于以下问题:PHP Dispatcher::getControllerClass方法的具体用法?PHP Dispatcher::getControllerClass怎么用?PHP Dispatcher::getControllerClass使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Phalcon\Mvc\Dispatcher
的用法示例。
在下文中一共展示了Dispatcher::getControllerClass方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testRoutes
/**
* @dataProvider routesProvider
*
* @param $arRoute
* @param $strUri
* @param $strClassName
*/
public function testRoutes($arRoute, $strUri, $strClassName)
{
$this->router->add($arRoute['route'], $arRoute['parameters'])->setName($arRoute['name']);
$this->router->handle($strUri);
$boolMatched = $this->router->wasMatched();
$this->assertTrue($boolMatched, 'failed to match ' . $strUri);
$strRouteName = $this->router->getMatchedRoute()->getName();
$this->assertEquals($arRoute['name'], $strRouteName, 'matched wrong route');
$this->setUpDispatcher();
$this->dispatcher->dispatch();
$strControllerClassName = $this->dispatcher->getControllerClass();
$this->assertEquals($strClassName, $strControllerClassName, 'wrong controller class name');
}
示例2: pathFinder
private function pathFinder($strMedia, $intMajorVersion, $intMinorVersion)
{
$strReturn = '';
$oLogger = $this->_di->getFileLogger();
// $oChecker = new Checker();
$strBaseDir = __DIR__ . DIRECTORY_SEPARATOR . $strMedia . DIRECTORY_SEPARATOR . 'v' . $intMajorVersion . '_';
$intMinorVersion = (int) $intMinorVersion;
for ($i = $intMinorVersion; $i >= 0; $i--) {
$strDir = $strBaseDir . $intMinorVersion . DIRECTORY_SEPARATOR . 'controllers';
$oChecker = new Checker($strDir, $this->dispatcher->getControllerClass());
if ($oChecker->methodExists($this->dispatcher->getActiveMethod())) {
$oLogger->debug(__CLASS__ . '->' . __FUNCTION__ . ':: ' . $this->dispatcher->getControllerClass() . '->' . $this->dispatcher->getActiveMethod() . ' lays in ' . $strDir);
$strReturn = $strDir;
break;
} else {
$oLogger->debug(__CLASS__ . '->' . __FUNCTION__ . ':: ' . $this->dispatcher->getControllerClass() . '->' . $this->dispatcher->getActiveMethod() . ' not found in ' . $strDir);
}
// if($strTokens = $oChecker->classExists($strDir, $this->dispatcher->getControllerClass())){
//
// $oLogger->debug('tokens: ' . $strTokens);
// }
}
return $strReturn;
}
示例3: Router
<?php
/**
* Created by PhpStorm.
* User: rcmonitor
* Date: 07.07.15
* Time: 15:46
*/
use Phalcon\Di;
use Phalcon\Events\Manager;
use Phalcon\Mvc\Dispatcher;
use Phalcon\Mvc\Router;
use Phalcon\Version;
$di = new Di\FactoryDefault();
$oRouter = new Router(false);
$oRouter->setDI($di);
$oRouter->add('/:controller', array('controller' => 1, 'action' => 'index'));
$oEventManager = new Manager();
$oEventManager->attach('dispatch:beforeDispatch', function () {
return false;
});
$oDispatcher = new Dispatcher();
$oDispatcher->setDI($di);
$oDispatcher->setEventsManager($oEventManager);
$oRouter->handle('/test');
$oDispatcher->setControllerName($oRouter->getControllerName());
$oDispatcher->setActionName($oRouter->getActionName());
$oDispatcher->dispatch();
echo $oDispatcher->getControllerClass() . PHP_EOL;
echo Version::get() . PHP_EOL;
示例4: handle
public function handle(\Phalcon\Events\Event $oEvent, \Phalcon\Mvc\Dispatcher $oDispatcher)
{
$oLogger = $this->di->get('fileLogger');
$oLogger->info($oEvent->getType() . ' happened in ' . $oDispatcher->getControllerClass() . '::' . $oDispatcher->getActionName());
}