Назад к вопросамЧто выведет программа на запрос
JuniorТеорияЧасто
Что выведет программа на запрос ?page=3&q= (строки через пробел)?
<?php
$_GET = ['page' => '3', 'q' => ''];
$page = (int) ($_GET['page'] ?? 1);
$limit = (int) ($_GET['limit'] ?? 20);
$q = $_GET['q'] ?? 'all';
var_dump($page, $limit, $q);int(3) int(20) string(0) ""
- Ждать, что
$_GET['q'] ?? 'all'даст'all'для?q=: ключ есть, в нём пустая строка, а??оставляет всё, кромеnull. - Ждать, что параметр, которого нет в адресе, придёт пустой строкой: его ключа нет в
$_GET, поэтому обычное чтение предупреждает, а??даёт значение по умолчанию.
- Как сделать, чтобы пустой
q=тоже давал'all'? - Что даст
(int) ($_GET['page'] ?? 1)на запрос?page=abc?