web-dev-qa-db-fra.com

laravel PDO :: ATTR_STATEMENT_CLASS requiert le format tableau le nom de classe doit être une chaîne spécifiant une classe existante

je travaillais sur un projet laravel puis j’ai installé un nouveau paquet en utilisant composer et j’ai trouvé cette erreur

PDO :: ATTR_STATEMENT_CLASS requiert le format tableau (nom de classe, tableau (ctor_args)); le nom de classe doit être une chaîne spécifiant une classe existante

j'ai essayé de :-

  1. revenir au commit précédent sur git 
  2. supprimer le dossier du fournisseur et composer.lock et réinstaller tout sans résultat 

entrez la description de l'image ici

10
Mohamed Magdy

Avait le même problème ici. Déclassement à compositor Requiert doctrine/dbal = 2.6.3 a fait le tour jusqu'ici. 

26
Jose Gratereaux

J'ai eu le même problème. Après avoir rétrogradé doctrine/dbal 2.7 à 2.6.*, le problème a été résolu.

5
S.Sasaki

j'ai eu le même problème après la réinstallation d'un nouveau système d'exploitation (Ubuntu 16.04), résolu en exécutant composer update puis composer dump-autoload.

semble être un problème avec la mise en cache dans le compositeur

2
scandar

Éditez composer.json: "doctrine/dbal": "2.8." à "doctrine/dbal": "2.4. " et lancer la mise à jour du compositeur résout les problèmes.

1
TriMinh

J'ai eu le même problème et il s'est avéré qu'il s'agissait d'une configuration sur Nginx, qui pointait toujours sur php7.0-fpm après la mise à niveau vers PHP 7.2.

Je viens de corriger ça sur /etc/nginx/sites-available/default

1
fredrib

J'ai trouvé cette question parce que j'avais un problème similaire.

J'ai mis à niveau PHP 7.0 vers PHP 7.2 et le problème a commencé.

Je savais que cela avait à voir avec le serveur et non avec l'application Laravel.

Après la recherche sans chance. J'ai simplement redémarré mon httpd.service et alto! Ça a marché. 

Je suppose que ceci parce que je n’ai pas redémarré le serveur http après la mise à niveau de PHP 7.0 à 7.2. 

Il suffit donc de redémarrer le serveur ou de redémarrer le service http pour que cela soit corrigé.

0
Lordwhizy

J'ai pu résoudre ce problème en supprimant le paquet php7.0-common après avoir installé php7.0 et php7.2. 

Initialement, la ligne de commande utilisait php7.2 (php -v) mais quand j'ai vérifié phpinfo dans le navigateur, elle utilisait php7.0. Cela aurait pu causer le problème pour moi.

0
ruwan800