2011-09-27 74 views
0

我需要做一项任务来检查分配给变量的某些html表单字段(type =“text”)是否为空。我发现is_null()没有检测到分配了空字段的变量,但是空()做了。发布的值永远不会为空?

POSTed值不为空的原因是什么?另外,isset()会是更好的选择吗?

+0

您是否在谈论页面中的字段,但没有任何内容或字段不在页面中?即如果它是GET,那么URI将是'?foo ='或'?'? – Quentin

+0

只是为了解释:提交的表单字段永远不会是null。至少该领域已经提交,即使它是空的。 – Marco

+0

对不起 - 澄清,我的意思是一个字段出现在页面上,但用户在提交时留空。 – thelionroars1337

回答

0

如果您的网页上没有设置输入字段,浏览器根本不会发送它。因此,你没有看到空,你没有看到任何东西到达。

0

以下内容应该适合您。如果表单元素与您的数组键匹配,则它将被设置为空字符串,如果表单元素不存在,则isset将返回false。

if(!isset($_POST['name'])) 
0

因为从数据的角度来看,空值在语义上比空值更明智,这更多的是运行时编程概念。实际上无法用平台和编程语言不可知的方式在整个网络中整理空值。

相关问题