当前位置: 首页>>代码示例>>PHP>>正文


PHP Uri::normalize方法代码示例

本文整理汇总了PHP中Zend\Uri\Uri::normalize方法的典型用法代码示例。如果您正苦于以下问题:PHP Uri::normalize方法的具体用法?PHP Uri::normalize怎么用?PHP Uri::normalize使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Zend\Uri\Uri的用法示例。


在下文中一共展示了Uri::normalize方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getRedirect

 public function getRedirect($urlString, $stayLocal = true, $preserveHttps = true)
 {
     /**
      * Check that the URL has the correct format expected of a valid HTTP
      * or HTTPS URL. If so, normalize the URL.
      */
     $valid = false;
     $url = new Uri();
     try {
         $url->parse($urlString);
         if ($url->isValid() && $url->isAbsolute()) {
             $url->normalize();
             $valid = true;
         }
     } catch (\Exception $e) {
     }
     if (false === $valid) {
         throw new Exception\InvalidArgumentException("Given value was not a valid absolute HTTP(S) URL: " . $url);
     }
     /**
      * Make sure we don't redirect from HTTPS to HTTP unless flagged by
      * the user. Using a Strict-Transport-Security header helps too!
      */
     if (true === (bool) $preserveHttps && HttpsDetector::isHttpsRequest()) {
         if (!$this->isHttps($url)) {
             throw new Exception\InvalidArgumentException("Given value was not a HTTPS URL as expected: " . $url);
         }
     }
     /**
      * Check if the URL meets the local host restriction unless disabled
      */
     if (true === $stayLocal && !$this->isLocal($url)) {
         throw new Exception\InvalidArgumentException("Given value was not a local HTTP(S) URL: " . $url);
     }
     /**
      * Check if the URL host exists on a whitelist of allowed hosts
      */
     $whitelist = $this->getWhitelist();
     if (!empty($whitelist) && !$this->isWhitelisted($url)) {
         throw new Exception\InvalidArgumentException("Given value was not a whitelisted URL as expected: " . $url);
     }
     /**
      * Get URL string after URL encoding checks and return a Location header
      * object.
      */
     $header = new Header\Location(array('url' => $url->toString(), 'status_code' => 302));
     return $header;
 }
开发者ID:emma5021,项目名称:toba,代码行数:48,代码来源:Redirector.php

示例2: testNormalizeUrl

 /**
  * Test normalizing URLs
  *
  * @param string $orig
  * @param string $expected
  * @dataProvider normalizedUrlsProvider
  */
 public function testNormalizeUrl($orig, $expected)
 {
     $url = new Uri($orig);
     $this->assertEquals($expected, $url->normalize()->toString());
 }
开发者ID:navassouza,项目名称:zf2,代码行数:12,代码来源:UriTest.php

示例3: normalize

 /**
  * @return Uri
  */
 public function normalize()
 {
     parent::normalize();
     $this->fragment = static::normalizeFragment($this->fragment);
     if (!$this->isAbsolute() && !$this->path && !$this->query && null === $this->fragment) {
         $this->fragment = '';
     }
     return $this;
 }
开发者ID:eloquent,项目名称:schemer,代码行数:12,代码来源:Uri.php

示例4: normalize

 /**
  * Normalize the URI
  *
  * @return \Zend\Uri\Uri
  */
 public function normalize()
 {
     $this->uri->normalize();
     return $this;
 }
开发者ID:sunnyct,项目名称:silexcmf-core,代码行数:10,代码来源:Uri.php


注:本文中的Zend\Uri\Uri::normalize方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。