Вход Регистрация
Файл: concrete5.7.5.6/concrete/src/Utility/Service/Url.php
Строк: 32
<?php
namespace ConcreteCoreUtilityService;
use 
Loader;
class 
Url {


    public function 
setVariable($variable$value false$url false) {
        
// either it's key/value as variables, or it's an associative array of key/values

        
if ($url == false) {
            
$url Loader::helper('security')->sanitizeString($_SERVER['REQUEST_URI']);
        } elseif(!
strstr($url,'?')) {
            
$url $url '?' Loader::helper('security')->sanitizeString($_SERVER['QUERY_STRING']);
        }

         
$vars = array();
        if (!
is_array($variable)) {
            
$vars[$variable] = $value;
        } else {
            
$vars $variable;
        }

        foreach(
$vars as $variable => $value) {
            
$url preg_replace('/(.*)(?|&)' $variable '=[^&]+?(&)(.*)/i''$1$2$4'$url '&');
            
$url substr($url0, -1);
            if (
strpos($url'?') === false) {
                
$url $url '?' $variable '=' $value;
            } else {
                
$url $url '&' $variable '=' $value;
            }
        }

        
// THIS DOES NOT WORK. SOMEONE WILL NEED TO FIX THIS PROPERLY IF THE W3C FOLKS WANT IT TO WORK
        //$url = str_replace('&', '&amp;', $url);
        
return $url;
    }

    public function 
unsetVariable($variable$url false) {
        
// either it's key/value as variables, or it's an associative array of key/values

        
if ($url == false) {
            
$url $_SERVER['REQUEST_URI'];
        } elseif(!
strstr($url,'?')) {
            
$url $url '?' $_SERVER['QUERY_STRING'];
        }

         
$vars = array();
        if (!
is_array($variable)) {
            
$vars[] = $variable;
        } else {
            
$vars $variable;
        }

        foreach(
$vars as $variable) {
          
$url preg_replace('/(.*)(?|&)' $variable '=[^&]+?(&)(.*)/i''$1$2$4'$url '&');
          
$url substr($url0, -1);
        }


        
// THIS DOES NOT WORK. SOMEONE WILL NEED TO FIX THIS PROPERLY IF THE W3C FOLKS WANT IT TO WORK
        //$url = str_replace('&', '&amp;', $url);
        
return $url;
    }
    public function 
buildQuery($url$params) {
        return 
$url '?' http_build_query($params'''&');
    }

    
/**
     * Shortens a given url with the tiny url api
     * @param string $strURL
     * @return string $url
     */
    
public function shortenURL($strURL) {
        
$file Loader::helper('file');
        
$url $file->getContents("http://tinyurl.com/api-create.php?url=".$strURL);
        return 
$url;
    }


}
Онлайн: 2
Реклама