空和零作为字符串

时间:2011-04-28 05:07:07

标签: php

如何编写将零评估为非空的if条件?我正在编写验证脚本,如果该字段为空,则抛出错误。如果选择的数值以0(零)开头,则不应视为空。手册指出字符串0被认为是空的并返回false。如果我将空值更改为!isset,则零可以工作,但其他真正为空的文本框会通过验证。我怎么写这个来处理我的案子?

3 个答案:

答案 0 :(得分:2)

if (strlen($x)) {
  // win \o/ (not empty)
}

快乐的编码。

(所有文本框/表单输入内容本质上只是文本。作为数值的任何含义都会出现,每个表示都可以被验证。strlen中0被强制回“0”。)

答案 1 :(得分:0)

您是否考虑过使用is_null()

if (is_null($value) || $value === "") {}

if (empty($value) && $value !== 0)

答案 2 :(得分:0)

if(!is_numeric($var) && empty($var))
{
    // empty
}
else
{
    // not empty
}