Получить GET-параметр из URL

Иногда нужно быстро получить GET-параметр из строки с URL, в этом поможет PHP функция parse_url().

$url = 'http://site.ru/path?email=mail@site.ru&name=site';
	
$parts = parse_url($url); 
parse_str($parts['query'], $query); 
 
// Все GET-параметры
print_r($query);
 
// Параметр «email»
echo $query['email'];
PHP

Для частого использования лучше применять функцию:

function getUrlQuery($url, $key = null)
{
	$parts = parse_url($url); 
	if (!empty($parts['query'])) {
		parse_str($parts['query'], $query); 
		if (is_null($key)) {
			return $query;
		} elseif (isset($query[$key])) {
			return $query[$key];
		}        
	}

	return false;
}

// Все GET-параметры
$data = getUrlQuery('http://site.ru/path?email=mail@site.ru&name=site');
print_r($data);

// Параметр «email»
echo getUrlQuery('http://site.ru/path?email=mail@site.ru&name=site', 'email');
PHP

Результат:

Array(
    [email] => mail@site.ru
    [name] => site
)

mail@site.ru
18.09.2019
Предыдущая запись PHP класс для хлебных крошек
Следующая запись Стандарты HTML-документов

Комментарии

, чтобы добавить комментарий.

Другие публикации

PHP транслит
PHP функции для перевода текста, ЧПУ, ссылок и имен файлов в транслит.
6747
+4
Примеры отправки AJAX JQuery
AJAX позволяет отправить и получить данные без перезагрузки страницы. Например, делать проверку форм, подгружать контент и т.д. А функции JQuery значительно упрощают работу.
39304
+9
Преобразование цветов HEX и RGB в PHP
Несколько примеров как перевести цвета из HEX в RGB и обратно с помощью PHP.
2010
+1
Использование API Яндекс Диска на PHP
Можно найти множество применений Яндекс Диска на своем сайте, например, хранение бекапов и отчетов, обновление прайсов,...
23539
+9
CURL - если сервер отдает редирект
Бывает так что сервер перенаправляет на другой URL. Например Google, если перейти на https://google.com c IP из РФ он...
4423
+1
Получить фото из Instagram без API
Так как Instagram и Fasebook ограничили доступ к API, а фото с открытого аккаунта всё же нужно периодически получать и...
7983
+6