-1

好的,我有我网站的注册表单。

当出现错误时,会弹出一个带有错误的框。该框由一个 html div、一个 h2 标头和 php 组成,以回显我的错误。

如果我点击提交,它会显示应有的错误,但无论如何都会显示标题和 div。

我不明白为什么。

这是回显错误的代码块。

} else if (!empty($errors)){
    echo '<div class="msg_module">';
    echo '<h2>Registration Errors:</h2>';
    echo $General->outputErrors($errors);
    echo '</div>';
}

谢谢大家!

编辑:我应该提到 $errors 是一个数组。

编辑:我的互联网又回来了,这里是 outputErrors 函数:

public function outputErrors($errors = ''){

        if(is_array($errors)){
            // handle for passed array
            foreach ($errors as $error){
                if(is_array($error)){
                    general::outputErrors($error);
                } else{
                general::$errStr.= ($error != '')?'<li>'.$error.'</li>':'';
                }
            }
        } else if($errors != ''){
        // handle for passed string
        general::$errStr = $errors;
        }
    return '<ul id="error_list">'.general::$errStr.'</ul>';
 }//outputErrors
4

1 回答 1

0

使用var_dump($errors);,您可能会看到该变量不为空。

根据您的评论,我假设变量是数组类型

阅读空函数的 PHP 手册,您将看到它对空数组(不包含任何元素的数组)返回 true

现在请记住,如果变量是字符串类型,那么大多数字符串都被认为是非空的。

于 2013-02-25T01:16:07.463 回答