You are here

public function SimpleForm::buildForm in Examples for Developers 3.x

Same name and namespace in other branches
  1. 8 form_api_example/src/Form/SimpleForm.php \Drupal\form_api_example\Form\SimpleForm::buildForm()

Build the simple form.

A build form method constructs an array that defines how markup and other form elements are included in an HTML form.

Parameters

array $form: Default form array structure.

\Drupal\Core\Form\FormStateInterface $form_state: Object containing current form state.

Return value

array The render array defining the elements of the form.

Overrides FormInterface::buildForm

File

modules/form_api_example/src/Form/SimpleForm.php, line 32

Class

SimpleForm
Implements the SimpleForm form controller.

Namespace

Drupal\form_api_example\Form

Code

public function buildForm(array $form, FormStateInterface $form_state) {
  $form['description'] = [
    '#type' => 'item',
    '#markup' => $this
      ->t('This basic example shows a single text input element and a submit button'),
  ];
  $form['title'] = [
    '#type' => 'textfield',
    '#title' => $this
      ->t('Title'),
    '#description' => $this
      ->t('Title must be at least 5 characters in length.'),
    '#required' => TRUE,
  ];

  // Group submit handlers in an actions element with a key of "actions" so
  // that it gets styled correctly, and so that other modules may add actions
  // to the form. This is not required, but is convention.
  $form['actions'] = [
    '#type' => 'actions',
  ];

  // Add a submit button that handles the submission of the form.
  $form['actions']['submit'] = [
    '#type' => 'submit',
    '#value' => $this
      ->t('Submit'),
  ];
  return $form;
}