将一组错误传递给频繁调用的函数

时间:2012-12-07 21:56:24

标签: php arrays

我有一个关于将数组传递给函数的正确方法的问题

验证表单后,我得到一个与每个表单字段对应的错误数组。即。

$errors = array(
    "First_Name" => "Missing first name",
    "Email" => "Invalid email address",
    ...
)

为了显示这个错误,我创建了一个函数

function print_error_message($field, $errors) {
    if($errors[$field])
        echo '<span class="error-msg">' . $errors[$field] . '</span>';
}

我在每个html字段后调用此函数来检查此字段是否有错误:

<input name="First_Name" value="<?php echo $First_Name ?>" />
<?php print_error_message("First_Name", $errors) ?>
...

所以,由于我有很多表单字段和很多错误,每次调用函数时传递'$ errors'数组都是一个好习惯。或者我应该使用global还是通过引用传递?

1 个答案:

答案 0 :(得分:0)

按照你这样做的方式做到这一点很好。当然不要使用全局变量,也不需要通过引用传递。

而不是if($errors[$field]),您可以使用if (array_key_exists($field, $errors))