Получить часть текущего URL-адреса PHP

Как я могу получить определенную часть текущего URL? например, мой текущий URL-адрес:

http://something.com/index.php?path=/something1/something2/something3/

Ну, мне нужно напечатать something2 с php.

Благодаря!

Solutions Collecting From Web of "Получить часть текущего URL-адреса PHP"

Вы используете функцию explode в PHP, чтобы отделить URL по первому параметру (в данном случае косую черту). Для достижения своей цели вы можете использовать;

 $url = "http://something.com/index.php?path=/something1/something2/something3/"; $parts = explode('/', $url); $value = $parts[count($parts) - 2]; 

Все эти другие примеры, похоже, сосредоточены на вашем конкретном примере. Я предполагаю, что вам нужен более гибкий способ сделать это, так как подход, основанный на взрыве, очень хрупок, если ваш URL изменяется, и вам все равно нужно получить данные из параметра path в строке запроса.

Я parse_url() parse_str() функции parse_url() и parse_str() .

 // your URL string $url = 'http://something.com/index.php?path=/something1/something2/something3/'; // get the query string (which holds your data) $query_string = parse_url($url, PHP_URL_QUERY); // load the parameters in the query string into an array $param_array = array(); parse_str($query_string, $param_array); // now you can look in the array to deal with whatever parameter you find useful. In this case 'path' $path = $param_array['path']; // now $path holds something like '/something1/something2/something3/' // you can use explode or whatever else you like to get at this value. $path_parts = explode('/', trim($path, '/')); // see the value you are interested in var_dump($path_parts); 

Вы могли бы сделать что-то вроде этого:

 $url = explode('/', 'http://something.com/index.php?path=/something1/something2/something3/'); echo $url[5];