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


PHP Http::encodeQueryFragment方法代碼示例

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


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

示例1: __invoke

 public function __invoke($routeName, $params = [], $excludedParams = [])
 {
     /** @var \Zend\View\HelperPluginManager $helperManager */
     $helperManager = $this->serviceLocator;
     /** @var \Zend\ServiceManager\ServiceManager $locator */
     $locator = $helperManager->getServiceLocator();
     /** @var \Zend\Mvc\Router\SimpleRouteStack $router */
     $router = $locator->get('Router');
     $assembledParams = [];
     if ($router->hasRoute($routeName)) {
         /** @var \Zend\Mvc\Router\Http\RouteInterface $route */
         $route = $router->getRoute($routeName);
         $assembledParams = $route->getAssembledParams();
     }
     /** @var \Zend\Http\PhpEnvironment\Request $request */
     $request = $locator->get('request');
     $uri = clone $request->getUri();
     $query = [];
     foreach (array_merge($uri->getQueryAsArray(), $params) as $key => $value) {
         if ($value != '') {
             $query[$key] = $value;
         }
     }
     $uri->setQuery($query);
     /** @var \Zend\View\Helper\Url $urlViewHelper */
     $urlViewHelper = $this->view->plugin('url');
     $return = $urlViewHelper->__invoke($routeName, $query);
     $query = $uri->getQueryAsArray();
     foreach ($uri->getQueryAsArray() as $key => $value) {
         if (in_array($key, $assembledParams) || in_array($key, $excludedParams)) {
             unset($query[$key]);
         }
     }
     $uri->setQuery($query);
     return count($query) == 0 ? $return : $return . '?' . Http::encodeQueryFragment($uri->getQuery());
 }
開發者ID:hoangpt,項目名稱:nextcms,代碼行數:36,代碼來源:UrlBuilder.php


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