Второе значение, передаваемое в функции - Что это?
Я пытался искать в других местах, но я не могу найти ответ. Я знаю, что функция может иметь более одного значения, передаваемого в нее, потому что сама функция приспосабливается к двум значениям. В этой функции прямо ниже, я вижу, что $required_fields
будут переданы в каждом случае, где "$field_length_array
"происходит, но что делает $_POST
сделать для меня?
Большое спасибо от брата медведя.
function check_max_field_lengths($field_length_array) {
$field_errors = array();
foreach($field_length_array as $fieldname => $maxlength ) {
if (strlen(trim(mysql_prep($_POST[$fieldname]))) > $maxlength) { $field_errors[] = $fieldname; }
}
return $field_errors;
}
function check_max_field_lengths($field_length_array) {
$field_errors = array();
foreach($field_length_array as $fieldname => $maxlength ) {
if (strlen(trim(mysql_prep($_POST[$fieldname]))) > $maxlength) { $field_errors[] = $fieldname; }
}
return $field_errors;
}
$required_fields = array('username', 'password');
$errors= array_merge($errors, check_required_fields($required_fields, $_POST));
$fields_with_lengths = array('username' => 30, 'password' => 30);
$errors = array_merge($errors, check_max_field_lengths($fields_with_lengths, $_POST));
1 ответ
Решение
В этом случае $_POST ничего не делает, потому что он не используется внутри функции в качестве второго аргумента. Вы можете отправить более одного аргумента, но затем внутри функции вы должны увидеть его использование func_get_args()
- Функция использует $_POST - но не как аргумент функции, а как глобальный объект веб-области php.