| Server IP : 37.27.51.148 / Your IP : 37.27.51.148 Web Server : nginx/1.14.1 System : Linux libra 4.18.0-553.51.1.el8_10.x86_64 #1 SMP Wed Apr 30 20:24:04 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.3.31 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/html/wp-content/plugins/redirection/models/url/ |
Upload File : |
<?php
require_once __DIR__ . '/url-query.php';
require_once __DIR__ . '/url-path.php';
require_once __DIR__ . '/url-match.php';
require_once __DIR__ . '/url-flags.php';
require_once __DIR__ . '/url-request.php';
require_once __DIR__ . '/url-transform.php';
require_once __DIR__ . '/url-encode.php';
class Red_Url {
/**
* URL
*
* @var string
*/
private $url;
/**
* Constructor
*
* @param string $url URL.
*/
public function __construct( $url = '' ) {
$this->url = $url;
$this->url = str_replace( ' ', '%20', $this->url ); // deprecated
}
/**
* Get the raw URL
*
* @return string URL
*/
public function get_url() {
return $this->url;
}
/**
* Match a target URL against the current URL, using any match flags
*
* @param string $requested_url Target URL.
* @param Red_Source_Flags $flags Match flags.
* @return boolean
*/
public function is_match( $requested_url, Red_Source_Flags $flags ) {
if ( $flags->is_regex() ) {
$regex = new Red_Regex( $this->url, $flags->is_ignore_case() );
return $regex->is_match( $requested_url );
}
$path = new Red_Url_Path( $this->url );
$query = new Red_Url_Query( $this->url, $flags );
return $path->is_match( $requested_url, $flags ) && $query->is_match( $requested_url, $flags );
}
}