【发布时间】:2014-06-30 02:08:04
【问题描述】:
我正在尝试检查我使用empty 函数的必填字段。不幸的是empty 认为 0 为空,我的值可能是 0 和单选按钮中的 1。我试过使用!is_int(myvalue),但它没有用。
这是我的代码:
<?php $required_fields = array('menu_name', 'position', 'visible');
foreach($required_fields as $fieldname) {
if(!isset($_POST[$fieldname]) || (empty($_POST[$fieldname]) && !is_int($_POST[$fieldname]))) {
$errors[] = $fieldname;
}
}
?>
【问题讨论】:
-
你认为什么是空值?
-
$_POST如果设置了值,则它们始终是字符串,请尝试将其与空字符串进行检查。!isset($_POST[$fieldname]) && $_POST[$fieldname] != '' -
是的!这行得通。我在观看的教程中看到了我发布的代码,但它对我不起作用。
-
我不明白你为什么同时使用empty和isset?使用
isset()检查变量是否已定义。如果是,请使用is_numeric()确保它是数字。 -
谢谢。这是我正在观看的视频教程中的一个视频教程,其中
is_int正在使用中。
标签: php validation radio-button