0

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

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

$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或通过引用传递?

4

1 回答 1

0

可以按照您的方式进行操作。当然不要使用全局变量,也不需要通过引用传递。

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

于 2012-12-07T21:58:52.083 回答