Supponiamo che l'utente stia caricando la seguente pagina: www.example.com/myDirectory/myPage.php?answer=yes
E voglio usare PHP per ottenere myPage.php?answer=yes
da quello. Tuttavia, basename($_SERVER['PHP_SELF'])
restituisce solo myPage.php
. Come potrei farlo?Ottieni il nome file corrente con i parametri URL
risposta
È possibile aggiungere la stringa di query dopo aver get come un environment variable:
$myurl = basename($_SERVER['PHP_SELF']) . "?" . $_SERVER['QUERY_STRING'];
Se è necessario considerare la possibilità di non stringa di query, aggiungere un test condizionale:
$myurl = strlen($_SERVER['QUERY_STRING']) ? basename($_SERVER['PHP_SELF'])."?".$_SERVER['QUERY_STRING'] : basename($_SERVER['PHP_SELF']);
Restituisce '/ myDirectory/myPage.phpanswer = yes'. Voglio 'myPage.php? Answer = yes'. – Mooseman
@Mooseman puoi esplodere su '/' e ottenere l'ultimo elemento nell'array risultante – Ascherer
whoops. risolto ora – Blazemonger
$_SERVER['QUERY_STRING']
ti darà i parametri
è più facile ?:
basename($_SERVER['REQUEST_URI'])
non so ; Dimmi! –
Per gli URL con parametri finali, di seguito verrà inserita la prima parte dell'URL corrente (ad es. la parte prima?) all'interno della variabile $ current_url [0] e quindi stamparla.
<?
$current_url = explode("?", $_SERVER['REQUEST_URI']);
echo $current_url[0] ;
?>
PHP parse_url() restituirà una serie di dominio, di file e ottenere le variabili. – Dinesh