當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Request::getParameters方法代碼示例

本文整理匯總了PHP中Nette\Application\Request::getParameters方法的典型用法代碼示例。如果您正苦於以下問題:PHP Request::getParameters方法的具體用法?PHP Request::getParameters怎麽用?PHP Request::getParameters使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Nette\Application\Request的用法示例。


在下文中一共展示了Request::getParameters方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: resolve

 /**
  * @param \Kdyby\Translation\Translator $translator
  * @return string|NULL
  */
 public function resolve(Kdyby\Translation\Translator $translator)
 {
     if ($this->request === NULL) {
         return NULL;
     }
     $params = $this->request->getParameters();
     return !empty($params['locale']) ? $params['locale'] : NULL;
 }
開發者ID:tomasstrejcek,項目名稱:Translation,代碼行數:12,代碼來源:LocaleParamResolver.php

示例2: __invoke

 /**
  * @param \Nette\Application\Application $application
  * @param \Nette\Application\Request $request
  */
 public function __invoke(Application $application, Request $request)
 {
     if (PHP_SAPI === 'cli') {
         newrelic_background_job(TRUE);
     }
     $params = $request->getParameters();
     $action = $request->getPresenterName();
     if (isset($params[$this->actionKey])) {
         $action = sprintf('%s:%s', $action, $params[$this->actionKey]);
     }
     if (!empty($this->map)) {
         foreach ($this->map as $pattern => $appName) {
             if ($pattern === '*') {
                 continue;
             }
             if (Strings::endsWith($pattern, '*')) {
                 $pattern = Strings::substring($pattern, 0, -1);
             }
             if (Strings::startsWith($pattern, ':')) {
                 $pattern = Strings::substring($pattern, 1);
             }
             if (Strings::startsWith($action, $pattern)) {
                 \VrtakCZ\NewRelic\Tracy\Bootstrap::setup($appName, $this->license);
                 break;
             }
         }
     }
     newrelic_name_transaction($action);
     newrelic_disable_autorum();
 }
開發者ID:vrtak-cz,項目名稱:newrelic-nette,代碼行數:34,代碼來源:OnRequestCallback.php

示例3: constructUrl

 /**
  * Constructs absolute URL from Request object.
  * @return string|NULL
  */
 public function constructUrl(Application\Request $appRequest, Nette\Http\Url $refUrl)
 {
     if ($this->flags & self::ONE_WAY) {
         return NULL;
     }
     $params = $appRequest->getParameters();
     // presenter name
     $presenter = $appRequest->getPresenterName();
     if (strncmp($presenter, $this->module, strlen($this->module)) === 0) {
         $params[self::PRESENTER_KEY] = substr($presenter, strlen($this->module));
     } else {
         return NULL;
     }
     // remove default values; NULL values are retain
     foreach ($this->defaults as $key => $value) {
         if (isset($params[$key]) && $params[$key] == $value) {
             // intentionally ==
             unset($params[$key]);
         }
     }
     $url = ($this->flags & self::SECURED ? 'https://' : 'http://') . $refUrl->getAuthority() . $refUrl->getPath();
     $sep = ini_get('arg_separator.input');
     $query = http_build_query($params, '', $sep ? $sep[0] : '&');
     if ($query != '') {
         // intentionally ==
         $url .= '?' . $query;
     }
     return $url;
 }
開發者ID:luminousinfoways,項目名稱:pccfoas,代碼行數:33,代碼來源:SimpleRouter.php

示例4: constructUrl

 public function constructUrl(Request $appRequest, Url $refUrl)
 {
     // Module prefix not match.
     if ($this->module && !Strings::startsWith($appRequest->getPresenterName(), $this->module)) {
         return null;
     }
     $params = $appRequest->getParameters();
     $urlStack = [];
     // Module prefix
     $moduleFrags = explode(":", Strings::lower($appRequest->getPresenterName()));
     $resourceName = array_pop($moduleFrags);
     $urlStack += $moduleFrags;
     // Resource
     $urlStack[] = Strings::lower($resourceName);
     // Id
     if (isset($params['id']) && is_scalar($params['id'])) {
         $urlStack[] = $params['id'];
         unset($params['id']);
     }
     // Set custom action
     if (isset($params['action']) && $this->_isApiAction($params['action'])) {
         unset($params['action']);
     }
     $url = $refUrl->getBaseUrl() . implode('/', $urlStack);
     // Add query parameters
     if (!empty($params)) {
         $url .= "?" . http_build_query($params);
     }
     return $url;
 }
開發者ID:bauer01,項目名稱:unimapper-nette,代碼行數:30,代碼來源:Route.php

示例5: createTemplate

 /**
  * Template factory.
  * @param  string
  * @param  callable
  * @return Nette\Templating\ITemplate
  */
 public function createTemplate($class = NULL, $latteFactory = NULL)
 {
     $template = $class ? new $class() : new Nette\Templating\FileTemplate();
     $template->setParameters($this->request->getParameters());
     $template->presenter = $this;
     $template->context = $context = $this->context;
     $url = $context->getByType('Nette\\Http\\IRequest')->getUrl();
     $template->baseUrl = rtrim($url->getBaseUrl(), '/');
     $template->basePath = rtrim($url->getBasePath(), '/');
     $template->registerHelperLoader('Nette\\Templating\\Helpers::loader');
     $template->setCacheStorage($context->getService('nette.templateCacheStorage'));
     $template->onPrepareFilters[] = function ($template) use($latteFactory) {
         $template->registerFilter($latteFactory ? $latteFactory() : new Nette\Latte\Engine());
     };
     return $template;
 }
開發者ID:svobodni,項目名稱:web,代碼行數:22,代碼來源:MicroPresenter.php

示例6: getSignal

 /**
  * @param \Ark8\Security\Authorizators\Request $request
  * @return array
  * @throws \Nette\InvalidStateException
  */
 private function getSignal(Request $request)
 {
     $params = $request->getParameters();
     if ($this->httpRequest->isAjax()) {
         $params += $request->getPost();
     } elseif (($tmp = $request->getPost(Presenter::SIGNAL_KEY)) !== NULL) {
         $params[self::SIGNAL_KEY] = $tmp;
     }
     $signal = NULL;
     $signalReceiver = '';
     if (isset($params[Presenter::SIGNAL_KEY])) {
         $param = $params[Presenter::SIGNAL_KEY];
         $pos = strrpos($param, '-');
         if ($pos) {
             $signalReceiver = substr($param, 0, $pos);
             $signal = substr($param, $pos + 1);
         } else {
             $signalReceiver = $this->getUniqueId();
             $signal = $param;
         }
         if ($signal == NULL) {
             // intentionally ==
             $signal = NULL;
         }
     }
     return [$signal, explode('-', $signalReceiver)];
 }
開發者ID:ark8,項目名稱:security,代碼行數:32,代碼來源:SignalAuthorizator.php

示例7: constructUrl

 /**
  * @param Application\Request $appRequest
  * @param Nette\Http\Url $refUrl
  * @return NULL|string
  */
 public function constructUrl(Application\Request $appRequest, Nette\Http\Url $refUrl)
 {
     $parameters = $appRequest->getParameters();
     if (isset($parameters['action']) && $parameters['action'] == FALSE) {
         $parameters['action'] = NULL;
     }
     $appRequest->setParameters($parameters);
     return parent::constructUrl($appRequest, $refUrl);
 }
開發者ID:minetro,項目名稱:micro-website-module,代碼行數:14,代碼來源:WebsiteRoute.php

示例8: handleApplicationRequest

 public function handleApplicationRequest(Application\Application $application, Application\Request $request)
 {
     if ($request->getPresenterName() === 'Kdyby:Cli') {
         $parameters = $request->getParameters();
         if (isset($parameters['output']) && ($output = $parameters['output']) instanceof OutputInterface) {
             $this->outputWriter->setOutputInterface($output);
         }
     }
 }
開發者ID:librette,項目名稱:doctrine-migrations,代碼行數:9,代碼來源:OutputInterfaceLinker.php

示例9: canonicalize

 /**
  * Conditional redirect to canonicalized URI.
  *
  * @return void
  * @throws Nette\Application\AbortException
  */
 public function canonicalize()
 {
     if (!$this->isAjax() && ($this->request->isMethod('get') || $this->request->isMethod('head'))) {
         try {
             $url = $this->createRequest($this, $this->action, $this->getGlobalState() + $this->request->getParameters(), 'redirectX');
         } catch (InvalidLinkException $e) {
         }
         if (isset($url) && !$this->getHttpRequest()->getUrl()->isEqual($url)) {
             $this->sendResponse(new Responses\RedirectResponse($url, Http\IResponse::S301_MOVED_PERMANENTLY));
         }
     }
 }
開發者ID:BozzaCoon,項目名稱:SPHERE-Framework,代碼行數:18,代碼來源:Presenter.php

示例10: onRequest

 public function onRequest(Application $app, Request $request)
 {
     if (!extension_loaded('newrelic')) {
         return;
     }
     if (PHP_SAPI === 'cli') {
         newrelic_name_transaction('$ ' . basename($_SERVER['argv'][0]) . ' ' . implode(' ', array_slice($_SERVER['argv'], 1)));
         newrelic_background_job(TRUE);
         return;
     }
     $params = $request->getParameters();
     newrelic_name_transaction($request->getPresenterName() . (isset($params['action']) ? ':' . $params['action'] : ''));
 }
開發者ID:enumag,項目名稱:newrelic-nette-1,代碼行數:13,代碼來源:NewRelicProfilingListener.php

示例11: constructUrl

 /**
  * Constructs absolute URL from Request object
  *
  * @param \Nette\Application\Request $appRequest
  * @param \Nette\Http\Url $refUrl
  * @return string|NULL
  */
 public function constructUrl(Application\Request $appRequest, \Nette\Http\Url $refUrl)
 {
     if ($appRequest->getPresenterName() != $this->getTargetPresenter()) {
         return NULL;
     }
     $params = $appRequest->getParameters();
     if (!isset($params['id']) && isset($params[0])) {
         $params['id'] = $params[0];
         unset($params[0]);
         $appRequest->setParameters($params);
     }
     return parent::constructUrl($appRequest, $refUrl);
 }
開發者ID:lohini,項目名稱:webloader,代碼行數:20,代碼來源:WebLoaderRoute.php

示例12: createTemplate

 /**
  * Template factory.
  * @param  string
  * @return Application\UI\ITemplate
  */
 public function createTemplate($class = NULL, callable $latteFactory = NULL)
 {
     $latte = $latteFactory ? $latteFactory() : $this->getContext()->getByType(Nette\Bridges\ApplicationLatte\ILatteFactory::class)->create();
     $template = $class ? new $class() : new Nette\Bridges\ApplicationLatte\Template($latte);
     $template->setParameters($this->request->getParameters());
     $template->presenter = $this;
     $template->context = $this->context;
     if ($this->httpRequest) {
         $url = $this->httpRequest->getUrl();
         $template->baseUrl = rtrim($url->getBaseUrl(), '/');
         $template->basePath = rtrim($url->getBasePath(), '/');
     }
     return $template;
 }
開發者ID:voda,項目名稱:application,代碼行數:19,代碼來源:MicroPresenter.php

示例13: onRequest

 /**
  * @param Nette\Application\Application $app
  * @param Nette\Application\Request $request
  */
 public function onRequest(Nette\Application\Application $app, Nette\Application\Request $request)
 {
     if (Consumerr::isConsole()) {
         Consumerr::setBackgroundJob(TRUE);
         Consumerr::setName('$ ' . basename($_SERVER['argv'][0]) . ' ' . implode(' ', array_slice($_SERVER['argv'], 1)));
     } else {
         $params = $request->getParameters();
         if ($request->method === 'FORWARD' && $request->getPresenterName() === $app->errorPresenter) {
             return;
             //do not replace presenter name with error presenter
         }
         Consumerr::setName($request->getPresenterName() . (isset($params['action']) ? ':' . $params['action'] : ''));
     }
 }
開發者ID:consumerr,項目名稱:nette,代碼行數:18,代碼來源:NetteConsumerr.php

示例14: initGlobalParameters

	/**
	 * Initializes $this->globalParams, $this->signal & $this->signalReceiver, $this->action, $this->view. Called by run().
	 * @return void
	 * @throws Nette\Application\BadRequestException if action name is not valid
	 */
	private function initGlobalParameters()
	{
		// init $this->globalParams
		$this->globalParams = array();
		$selfParams = array();

		$params = $this->request->getParameters();
		if ($this->isAjax()) {
			$params += $this->request->getPost();
		}
		if (isset($this->request->post[self::SIGNAL_KEY])) {
			$params[self::SIGNAL_KEY] = $this->request->post[self::SIGNAL_KEY];
		}

		foreach ($params as $key => $value) {
			if (!preg_match('#^((?:[a-z0-9_]+-)*)((?!\d+\z)[a-z0-9_]+)\z#i', $key, $matches)) {
				continue;
			} elseif (!$matches[1]) {
				$selfParams[$key] = $value;
			} else {
				$this->globalParams[substr($matches[1], 0, -1)][$matches[2]] = $value;
			}
		}

		// init & validate $this->action & $this->view
		$this->changeAction(isset($selfParams[self::ACTION_KEY]) ? $selfParams[self::ACTION_KEY] : self::DEFAULT_ACTION);

		// init $this->signalReceiver and key 'signal' in appropriate params array
		$this->signalReceiver = $this->getUniqueId();
		if (isset($selfParams[self::SIGNAL_KEY])) {
			$param = $selfParams[self::SIGNAL_KEY];
			if (!is_string($param)) {
				$this->error('Signal name is not string.');
			}
			$pos = strrpos($param, '-');
			if ($pos) {
				$this->signalReceiver = substr($param, 0, $pos);
				$this->signal = substr($param, $pos + 1);
			} else {
				$this->signalReceiver = $this->getUniqueId();
				$this->signal = $param;
			}
			if ($this->signal == NULL) { // intentionally ==
				$this->signal = NULL;
			}
		}

		$this->loadState($selfParams);
	}
開發者ID:nakoukal,項目名稱:fakturace,代碼行數:54,代碼來源:Presenter.php

示例15: onRequest

 public function onRequest(Application $app, Request $request)
 {
     if (!extension_loaded('newrelic')) {
         return;
     }
     if (PHP_SAPI === 'cli') {
         // uložit v čitelném formátu
         newrelic_name_transaction('$ ' . basename($_SERVER['argv'][0]) . ' ' . implode(' ', array_slice($_SERVER['argv'], 1)));
         // označit jako proces na pozadí
         newrelic_background_job(TRUE);
         return;
     }
     // pojmenování požadavku podle presenteru a akce
     $params = $request->getParameters();
     newrelic_name_transaction($_SERVER['HTTP_HOST'] . " | " . $request->getPresenterName() . (isset($params['action']) ? ':' . $params['action'] : ''));
 }
開發者ID:venca-x,項目名稱:nette-newrelic,代碼行數:16,代碼來源:NewRelicProfilingListener.php


注:本文中的Nette\Application\Request::getParameters方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。