$_GET

(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)

$_GETПеременные HTTP GET

Описание

Ассоциативный массив переменных, переданных скрипту через параметры URL (известные также как строка запроса). Обратите внимание, что массив не только заполняется для GET-запросов, а скорее для всех запросов со строкой запроса.

Примеры

Пример #1 Пример использования $_GET

<?php
echo 'Привет, ' . htmlspecialchars($_GET["name"]) . '!';
?>

Подразумевается, что пользователь ввёл в браузере адрес http://example.com/?name=Иван

Вывод приведённого примера будет похож на:

Привет, Иван!

Примечания

Замечание:

Это «суперглобальная» или автоматическая глобальная переменная. Это просто означает, что она доступна во всех контекстах скрипта. Нет необходимости выполнять global $variable; для доступа к ней внутри метода или функции.

Замечание:

Параметры GET обрабатываются urldecode().

add a note add a note

User Contributed Notes 2 notes

up
4
CleverUser123
3 years ago
If you're tired of typing $var = $_GET['var'] to get variables, don't forget that you can also use:

extract($_GET, EXTR_PREFIX_ALL, "g")

So if you have $_GET['under'], you can do $g_under. It's way shorter if you have more get elements! If you don't want prefix, do

extract($_GET)

to get normal. So $_GET['under'] would become $under. Might not extract under if it already exists, however.
up
3
An Anonymous User
3 years ago
<?php
// It is important to sanitize
// input! Otherwise, a bad actor
// could enter '<script src="evilscript.js"></script>'
// in a URL parameter. Assuming you echo it, this
// would inject scripts in an XSS attack.
//
// The solution:
$NAME = $_GET['NAME'];
// Bad:
echo $NAME;
// that one is vulnerable to XSS
// Good:
echo htmlspecialchars($NAME);
// Sanitizes input thoroughly.
?>
To Top