编程语言
首页 > 编程语言> > PHP:检查发布变量是否存在或分配空值

PHP:检查发布变量是否存在或分配空值

作者:互联网

这可以使用isNAN而不是!isset在Javascript中完成.
使用下面的示例 – 两个表单都发布到我的脚本,一个没有值,一个有值.如果post var不存在,下面的代码是否是在PHP中执行此操作以正确分配值的正确方法?

$mycheck =!isset($_ POST [‘value’])? 0:$_POST [‘value’];

<? 
if($_POST) :
  $mycheck = !isset($_POST['value']) ? 0 : $_POST['value'];
  echo $mycheck;
endif;
?>

<!-- send value-->
<form action="" method="post">
  <select name="value">
    <option value="0">0</option>
    <option value="5">5</option>
  </select>
  <input type="submit" name="submit">
</form>

<!-- doesn't send value-->
<form action="" method="post">
  <input name="different_var">
  <input type="submit" name="submit">
</form>

解决方法:

是的,这是设置默认值的可接受方式.

PHP 5.3中引入的另一种方法是省略三元表达式的中间参数:

$mycheck = $_POST['value'] ?: 0;

但是,如果未设置$_POST [‘value’],这可能会引发尝试访问具有不存在键的数组的通知.因此,您的原始方法更容易被接受.

标签:php,conditional-operator
来源: https://codeday.me/bug/20190613/1232484.html