Как сообщается в $ form ['# submit'] и $ form ['# validate'] и $ form ['# process'] больше не поддерживают пользовательские параметры , предлагаемый способ передачи параметров чтобы обработчик представления, установленный как в показанном коде, использовал код, подобный следующему:
$form['#first_paramater'] = $value;
$form['#submit'][] = 'my_submit_handler';
Обработчик получит значение как $form['#first_paramater']
.
Заметьте, что вместо #first_paramater
в коде может использоваться другая строка, но она должна начинаться с #
.
Обычно нет необходимости устанавливать обработчик отправки, как это делает код, но в некоторых случаях это необходимо, например, для изменения формы, созданной другим модулем, или для установки отдельного обработчика отправки для каждой из кнопок отправки. представить в форме.
drupal_retrieve_form () сохраняет параметры, переданные обработчику построения формы в $form['#parameters']
, который содержит:
$form_id
$form_state
- параметры передаются в конструктор форм