HTTP_REFERER ayıklamak Programı ve Bilgisayar

4 Cevap php

Ben $_SERVER['HTTP_REFERER'] - o http://example.com/i/like/turtles.html taklit. Ne dize dışında sadece http://example.com bölümünü almak için yapmak ve kendi değişkende saklamak gerekir?

4 Cevap

Bu örnekte, en iyi çözüm host ile PHP'nin parse_url yöntemi . This splits up the URL into an associative array. You would then build your final value by combining the scheme kullanmak olacaktır:

if ( $parts = parse_url( "http://example.com/i/like/turtles.html" ) ) {
    echo $parts[ "scheme" ] . "://" . $parts[ "host" ];
}

Aşağıdaki şekilde parse_url kullanmayı tercih ediyorum ...

if ($urlParts = parse_url($myURI))
  $baseUrl = $urlParts["scheme"] . "://" . $urlParts["host"];

Sen the parse_url function bunu sağlamak için kullanmak gerekir

Bir düzenli ifadeyi kullanabilirsiniz:

if (isset($_SERVER['HTTP_REFERER']) && preg_match('@^[^/]+://[^/]+@', $_SERVER['HTTP_REFERER'], $match)) {
    var_dump($match[0]);
}

Ya parse_url fonksiyonu kullanabilirsiniz.