我正在用PHP构建一个站点,该站点从用户那里输入超过20个字段。几乎不需要3-4个字段值,其余部分可以留空。我想在显示这些值时显示自定义错误消息而不是空白或零或null。如何才能做到这一点?我使用MySQL作为后端。
答案 0 :(得分:0)
我假设您使用$ _POST数组。
在这种情况下你可以这样做:
$errors = array();
foreach($_POST AS $key => $value) {
if(empty($value)) {
$_POST[$key] = "Custom error message"; // Or place it in an apart array like:
$errors[$key] = "Custom error message";
}
}
您也可以选择立即将信息打印到屏幕上。这取决于你。
此外,你有没有考虑过如下的验证库:
http://kohanaframework.org/guide/security.validation
祝你好运!
答案 1 :(得分:-1)
<?php
$var1 = 'Foo';
$var2 = '';
$var3 = NULL;
echo ( ! empty($var1)) ? $var1 : 'Not set!'; // Foo
echo ( ! empty($var2)) ? $var2 : 'Not set!'; // Not set!
echo ( ! empty($var3)) ? $var3 : 'Not set!'; // Not set!
/**
* Alternative function solution based on OP's comment:
*/
function output($str)
{
echo ( ! empty($str)) ? $str : 'Not set!';
return TRUE;
}
output($var1); // Foo
output($var2); // Not set!
output($var3); // Not set!