D8 | submitForm | Get the $_POST - vars via $form_state or via \Drupal::request()?
$request-&gt;request-&gt;all() != $form_state-&gt;getValues()

$request-&gt;request-&gt;all() === $_POST
$request-&gt;query-&gt;all() === $_GET


See in Drupal\Core\Form\FormBuilder::buildForm()

$input = $form_state-&gt;isMethodType('get') ? $request-&gt;query-&gt;all() : $request-&gt;request-&gt;all();
$form_state-&gt;setUserInput($input);


$form_state->getValues()  is already modified data that is formed on the basis of $form_state['input'] and #default_value

See in Drupal\Core\Form\FormBuilder::handleInputElement();

Pay attention to #value_callback it forms the value of the field