Если у вас есть PHP 5.3, вы можете просто сделать:
$a = $_GET['id'] ?: 1;
Как и в руководстве по PHP:
Начиная с PHP 5.3, можно опустить среднюю частьтроичного оператора.Выражение expr1?: Expr3 возвращает expr1, если expr1 оценивается как TRUE, и expr3 в противном случае.
Если у вас нет PHP 5.3 или выше, вам придется использовать предложение Сарфраза (или, лучше, дельфиста).Однако в более крупных приложениях я склоняюсь к тому, чтобы переменные запроса были обернуты таким образом, чтобы я мог указать значение по умолчанию в аргументе функции, получающей запрос.Преимущество этого метода в том, что он чище (проще для понимания) и не генерирует предупреждений, если индекс не существует в переменной $ _GET, поскольку я могу использовать такие вещи, как isset
, чтобы проверить, существует ли индекс массива.Я получаю что-то вроде: