Значение по умолчанию PHP Post - PullRequest
0 голосов
/ 17 сентября 2018

У меня есть простой код, который получает параметры, вставленные пользователем. Но как я могу использовать $_POST для установки значения по умолчанию? Например, если пользователя просят ввести имя и возраст, и он решил ввести только нужное мне имя, то $_POST устанавливает возраст равным 0.

Мой код, который я использую:

$name = $_POST['name'];
$weight= $_POST['weight'];
$size =   $_POST['size'];

И иногда может быть только вес или размер, поэтому мне нужно установить значение по умолчанию. Я пытался $size = $_POST['size'] ?? 0;, но это не сработало.

Ответы [ 3 ]

0 голосов
/ 17 сентября 2018

Вы можете использовать троичный оператор для установки значений по умолчанию для необязательных полей.

$name = $_POST['name'];
$weight= (!empty($_POST['weight'])) ? $_POST['weight'] : 0;
$size =   (!empty($_POST['size'])) ? $_POST['size'] : 0;

Ссылка: -

empty ()

Примечание: - Вы можете сделать то же самое для name, например: -

$name = (!empty($_POST['name'])) ? $_POST['name'] : '';

Примечание: - Нулевой оператор объединения ?? работал только в php 7+

0 голосов
/ 17 сентября 2018

Попробуйте:

$size = (isset($_POST['size'])) ? $_POST['size'] : 0;
0 голосов
/ 17 сентября 2018

Функция isset() используется для проверки, установлена ​​ли переменная или нет.Если переменная уже сброшена с помощью функции unset (), она больше не будет установлена.Функция isset() возвращает false, если переменная тестирования содержит значение NULL.

Версия: PHP 4 и выше

Код теста:

$name =  isset($_POST['name']) ? $_POST['name'] : '';
$weight= isset($_POST['weight']) ? $_POST['weight'] : 0;
$size =  isset($_POST['size']) ? $_POST['size'] : 0;
...