2016-03-05 2 views
-1

Я хотел бы знать, как можно получить текущий URL, но до ? характера:Получить текущий URL перед символом "?"

http://www.example.com/pag1?q=ok 

ВЫВОД:

http://www.example.com/pag1 
+0

Регулярного выражения или простых функций строки с помощью StrPos найти? а затем взять первые x символов с tww strstr. –

ответ

3

вы можете взорвать свой адрес, как

$url = 'http://www.example.com/pag1?q=ok'; 

$explodedURL= parse_url($url); 

echo '<pre>'; 
print_r($explodedURL['host'].explodedURL['path']); 

echo $explodedURL['scheme'].'://'.$explodedURL['host'].$explodedURL['path']; 

Выход:

Array 
(
[scheme] => http 
[host] => www.example.com 
[path] => /pag1 
[query] => q=ok 
) 
http://www.example.com/pag1 
+0

Вы должны отредактировать, чтобы включить ссылку на библиотеку для функции parse_url, потому что вы можете указать, чтобы получить только один компонент URL-адреса, например. просто хост или просто запрос –

+0

, и если я не знаю полный URL-адрес, чтобы получить его, он может использовать этот код: 'http: //'.$_SERVER [' HTTP_HOST ']. $ _ SERVER [' REQUEST_URI ']; – Borja

+0

???? большое спасибо – Borja

1

Что-то вроде:

$url = 'http://www.example.com/pag1?q=ok’; 
$pos = strpos($url, '?'); 
$yourstr = strstr($url, 0, $pos - 1); 
Смежные вопросы