Heim >Backend-Entwicklung >PHP-Tutorial >Manchmal existiert $errors nicht. Warum meldet Blade keinen Fehler?

Manchmal existiert $errors nicht. Warum meldet Blade keinen Fehler?

WBOY
WBOYOriginal
2016-08-04 09:20:27943Durchsuche

Manchmal existiert $errors nicht. Warum meldet Blade keinen Fehler?

Antwortinhalt:

Manchmal existiert $errors nicht. Warum meldet Blade keinen Fehler?

$errors ist ein Attribut, das von laravel automatisch in response eingefügt wird. Auch wenn es nicht in Ihrem Code geschrieben ist, wird es dennoch einen leeren Wert übergeben, dessen Typ

ist

IlluminateSupportViewErrorBag

Aber es wird eigentlich nur mit einem Array multipliziert IlluminateSupportMessageBag

Wenn Sie also $errors->first('email') verwenden, können Sie es gemäß dem folgenden Code sehen

<code class="php">/**
 * Get the first message from the bag for a given key.
 *
 * @param  string  $key
 * @param  string  $format
 * @return string
 */
public function first($key = null, $format = null)
{
    $messages = is_null($key) ? $this->all($format) : $this->get($key, $format);
    return count($messages) > 0 ? $messages[0] : '';
}</code>

Wenn ein Wert vorhanden ist, wird er zurückgegeben. Wenn kein Wert vorhanden ist, wird er leer zurückgegeben, sodass kein Fehler gemeldet wird

Da Laravel 5.2.27 Web-Middleware zu jeder Seite hinzugefügt hat, wird der Fehler „$errors ist nicht definiert“ natürlich nicht gemeldet.
Schreiben Sie den Formularcode außerdem direkt in Views? Müssen Sie nicht auf das Formularerweiterungspaket klicken?

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn