Laravel Upgrade auf PHP 8.1: Der Attributwert muss für das ausgewählte Attribut vom Typ bool sein, Array angegeben: Laravel Upgrade auf PHP 8.1

Beim Upgrade von Laravel auf PHP 8.1 erhalten Sie möglicherweise die folgende Meldung:

Der Attributwert muss für das ausgewählte Attribut vom Typ „Bool“ sein (Array angegeben).

Der Grund:

Dies sollte wahrscheinlich in Ihrem Design- oder Eloquent-Code enthalten sein. Versuchen Sie, eine neue einfache temporäre Route in routes/web.php hinzuzufügen:

Route::get('/test', Funktion() { return "hi"; });

Beim Öffnen von /test sollte es wahrscheinlich funktionieren.

Deshalb könnte es an Ihrem Design liegen. Navigieren Sie zu Ihrem Blade-Design.

Seltsamerweise scheint dies bereits vor dem Blade-Thema zu passieren, wenn wir eine Eloquent-Anfrage stellen, wie:

Route::get('/test', Funktion() { return Seite::alle(); });

Seltsamerweise scheint die Verwendung von Laravel 9 mit PHP 8.0 anstelle von PHP 8.1 den Fehler zu beheben.

Problem gelöst

Es schien, dass in der Datei config/database.php falsche Einstellungen im MySQL-Treiber vorhanden waren:

'Optionen' => [\PDO::ATTR_EMULATE_PREPARES => true + Erweiterung geladen('pdo_mysql') ? Array-Filter([ PDO::MYSQL_ATTR_SSL_CA => Umgebung('MYSQL_ATTR_SSL_CA'),

Wenn Sie dies ändern in:

'Optionen' => Erweiterung geladen('pdo_mysql') ? Array-Filter([ PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), ]) : [],

Es wird gelöst

Hatte jemand auch dieses Problem und weiß, wie man es behebt?

Einen Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

de_DEDeutsch
Nach oben blättern