PHP 默认 Post 值

PHP default Post value

我有一些简单的代码可以获取用户插入的参数。但是如何使用 $_POST 设置默认值呢?例如,如果要求用户输入姓名和年龄,而他选择仅输入我需要的姓名,那么 $_POST 会将年龄设置为 0。

我的代码我用什么:

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

有时只有重量或尺寸,所以我需要设置默认值。我试过 $size = $_POST['size'] ?? 0; 但没有成功。

isset()函数用于检查一个变量是否被设置。如果一个变量已经用 unset() 函数取消设置,它将不再被设置。如果测试变量包含 NULL 值,isset() 函数 return false。

版本: PHP4岁及以上

测试代码:

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

您可以使用 ternary operator 为非必填字段设置默认值。

$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'] : '';

备注:- Null coalescing operator ?? 只在php 7+

尝试:

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