| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | 
							- <?php
 
- declare(strict_types=1);
 
- namespace GuzzleHttp\Psr7;
 
- use Psr\Http\Message\UriInterface;
 
- /**
 
-  * Provides methods to determine if a modified URL should be considered cross-origin.
 
-  *
 
-  * @author Graham Campbell
 
-  */
 
- final class UriComparator
 
- {
 
-     /**
 
-      * Determines if a modified URL should be considered cross-origin with
 
-      * respect to an original URL.
 
-      */
 
-     public static function isCrossOrigin(UriInterface $original, UriInterface $modified): bool
 
-     {
 
-         if (\strcasecmp($original->getHost(), $modified->getHost()) !== 0) {
 
-             return true;
 
-         }
 
-         if ($original->getScheme() !== $modified->getScheme()) {
 
-             return true;
 
-         }
 
-         if (self::computePort($original) !== self::computePort($modified)) {
 
-             return true;
 
-         }
 
-         return false;
 
-     }
 
-     private static function computePort(UriInterface $uri): int
 
-     {
 
-         $port = $uri->getPort();
 
-         if (null !== $port) {
 
-             return $port;
 
-         }
 
-         return 'https' === $uri->getScheme() ? 443 : 80;
 
-     }
 
-     private function __construct()
 
-     {
 
-         // cannot be instantiated
 
-     }
 
- }
 
 
  |