2012-12-07 23 views
0

叫我有一個關於正確的方式爲數組傳遞給函數傳球失誤陣列的被頻繁

校驗表單之後問題的功能,我得到的錯誤的對應於每個表單字段的數組。即

$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還是通過引用?

回答

0

按照你這樣做的方式來做是件很好的事。當然不要使用全局變量,也不需要通過引用來傳遞。可以使用if (array_key_exists($field, $errors))而不是if($errors[$field])

+0

謝謝!我擔心這樣做效率低下。 –