空($ _ POST ['var'])当输入值为'0'时返回true

ans*_*onl 5 html php post input

可能重复:
php:'0'为带空的字符串()

我有一个像这样的形式的输入

<input name='var' type='number'>
Run Code Online (Sandbox Code Playgroud)

提交表单后,输入将通过POST发送到PHP文件.在PHP文件上,它通过检查来检查是否填写了输入

empty($_POST['var'])
Run Code Online (Sandbox Code Playgroud)

当我在文本框中输入'0'(零)并提交表单时,PHP代码返回'1'表示空($ _ POST ['var']),即使我已经尝试过print_r($ _ POST)和'var'值为'0'.

这应该发生吗?我是否还需要为此例外检查== 0?谢谢.

xda*_*azz 0

您不能empty仅用于检查它是否为空字符串或字符串仅包含空白字符。

像这样使用:

function isEmpty($key) {
  return isset($_POST[$key]) && trim($_POST[$key]) === '';
}
Run Code Online (Sandbox Code Playgroud)