PHP geçerli url Belirlenmesi

5 Cevap php

Ben dönmek benim işlevini değiştirmek için gereken de ben burada varım geçerli klasör benim geçerli işlevi:

function getLinkFromHost($url){  
    $port = $_SERVER['REMOTE_PORT'];  
    $server = $_SERVER['HTTP_HOST'];  
    if($port == 443){  
    	$type = "https";  
    } else {  
    	$type = "http";  
    }  
    return $type . "://" . $server . "/" . $url;  
}

5 Cevap

$_SERVER['REQUEST_URI'] veya $_SERVER['SCRIPT_NAME'] bir göz atın

($_SERVER manuel giriş itibaren)

İşte şimdi bir süre için bunu kullanıyorum kısa bir tatlı fonksiyonu.

function curPageURL() {
 $pageURL = 'http';
 if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
 $pageURL .= "://";
 if ($_SERVER["SERVER_PORT"] != "80") {
  $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
 } else {
  $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
 }
 return $pageURL;
}

Ben kredi alamaz, o aittir:

http://www.webcheatsheet.com/PHP/get_current_page_url.php

Muhtemelen de get url içine vars dahil etmek istiyorum, bu yüzden bir şey için highphilosopher function eklemek gerekir ...

$current_url = rtrim(curPageURL(), "/").(!empty($_GET)) ? "?".http_build_query($_GET) : "";

..........

echo $_SERVER['PHP_SELF']; // return current file

echo __FILE__; // return current file

echo $_SERVER['SCRIPT_NAME']; // return current file

echo dirname(__FILE__); // return current script's folder

// etc

İşte size yardımcı olabilecek bir yöntem:

function current_url()
{
    $result = "http";

    if($_SERVER["HTTPS"] == "on") $result .= "s";

    $result .= "://".$_SERVER["SERVER_NAME"];

    if($_SERVER["SERVER_PORT"] != "80") $result .= ":".$_SERVER["SERVER_PORT"];

    $result .= $_SERVER["REQUEST_URI"];

    return $result;
}