How to check if $_GET is empty?

How to check if $_GET is empty?

55
задан Cyril Gandon 3 August 2011 в 08:01
поделиться

7 ответов

Вы сами сказали, проверьте, пусто :

if (empty($_GET)) {
    // no data passed by get
}

Видите ли, PHP настолько прост. Вы можете просто написать, что думаете;)

Этот метод достаточно безопасен. ! $ _ GET может дать вам неопределенную переменную E_NOTICE, если $ _ GET не задано (маловероятно, но возможно).

119
ответ дан 26 November 2019 в 17:40
поделиться

Думаю, самый простой способ, не требующий каких-либо операторов, это

if($_GET){
//do something if $_GET is set 
} 
if(!$_GET){
//do something if $_GET is NOT set 
} 
12
ответ дан 26 November 2019 в 17:40
поделиться
<?php
if (!isset($_GET) || empty($_GET))
{
    // do stuff here
}
7
ответ дан 26 November 2019 в 17:40
поделиться

Просто для того, чтобы внести здесь некоторые изменения: вы можете проверить

if ($_SERVER["QUERY_STRING"] == null)

, это полностью идентично тестированию $ _ GET .

11
ответ дан 26 November 2019 в 17:40
поделиться
if (!$_GET) echo "empty";

зачем вам такая проверка?

лол
вы, ребята, слишком прямолинейны.
не воспринимайте как оскорбление, но иногда и вовсе не относитесь к делу
$ _GET - это особая переменная, не похожая на другие.
он должен быть установлен всегда. нет необходимости рассматривать его как другие переменные. когда $ _GET не задан и ожидается - это аварийный случай, и это то, что было изобретено примечанием "Неопределенная переменная" для

4
ответ дан 26 November 2019 в 17:40
поделиться

Я бы использовал следующий оператор if, потому что его легче читать (и изменять в будущем)


if(!isset($_GET) || !is_array($_GET) || count($_GET)==0) {
   // empty, let's make sure it's an empty array for further reference
   $_GET=array();
   // or unset it 
   // or set it to null
   // etc...
}
2
ответ дан 26 November 2019 в 17:40
поделиться

Легко.

if (empty($_GET)) {
    // $_GET is empty
}
3
ответ дан 26 November 2019 в 17:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: