116 votes

Avertissement : Le ciblage de l'interrupteur "continue" est équivalent à "break". Vouliez-vous utiliser "continue 2" ?

J'ai php7.3 et symfony2.8 Quand j'essaie de créer les classes avec la console, j'obtiens cette erreur :

[Symfony \Component\Debug\Exception\ContextErrorException ]Avertissement : Le ciblage de l'interrupteur "continue" est équivalent à "break". Voulez-vous utiliser utiliser "continue 2" ?

3 votes

Veuillez inclure votre code dans la question. (Et pour l'éditeur, veuillez ne pas ajouter à la question des choses que le PO n'a pas réellement dites, aussi utile que cela puisse paraître. Cela met des mots dans leur bouche et devient confus).

0 votes

Essayez "composer la mise à jour". Cela peut aider ou non. L'avertissement est le résultat d'un "correctif" récent de php et nécessite une légère mise à jour pour être corrigé. Vous pouvez également rencontrer l'avertissement count() null. @trincot - Et oui, l'avertissement est clair. Le problème est qu'il est généré par une bibliothèque tierce. Dans un bloc de code très confus.

0 votes

Avez-vous vérifié si votre serveur est conforme aux exigences minimales ? La version actuelle de Symfony est 4.2.3. Il est donc très peu probable que la version 2.8 supporte PHP/7.3, qui a été publié il y a moins de deux mois.

16voto

kyo Points 16731

composer self-update composer install

Maintenant, ça devrait fonctionner

enter image description here

1 votes

Command "self-update" is not defined.

11voto

kheengz Points 637

Avez-vous essayé de faire une mise à jour automatique du compositeur ?

composer self-update

ou

composer install

0 votes

Cela me donne l'erreur Command "self-update" is not defined

0 votes

Avez-vous installé composer ? Sinon, téléchargez et installez composer depuis leur site ici getcomposer.org/download

0 votes

Oui, il a été installé. mais je pense qu'il y a eu un problème avec lui, il a arrêté d'installer des composants. je l'ai purgé et réinstallé et il fonctionne :)

9voto

aimme Points 3152

Dans mon cas, php a été mis à niveau de php7.2.22 à php7.3.9.

il a donc fallu rétrograder cli php comme compositeur est exécuté sur le terminal

//checked php version
php -v //was 7.3.9

//changed cli version back to 7.2
sudo update-alternatives --set php /usr/bin/php7.2
sudo update-alternatives --set phar /usr/bin/phar7.2
sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.2
sudo update-alternatives --set phpize /usr/bin/phpize7.2
sudo update-alternatives --set php-config /usr/bin/php-config7.2

//checked php version 
php -v //was 7.2.22

info supplémentaire si vous utilisez apache, n'oubliez pas de garder cli et apache dans la même version. dans mon cas, j'ai dû rétrograder

//changed web version back to 7.2
sudo a2dismod php7.3
sudo a2enmod php7.2
sudo service apache2 restart

Cela fonctionnera avec d'autres versions, alors n'hésitez pas à passer d'une version à l'autre. Il suffit de remplacer les numéros de version de manière appropriée.

1 votes

J'ai eu le même problème. Le problème est que nous sommes toujours sur une ancienne version de Symfony (2.8) qui ne fonctionne pas correctement sur PHP 7.3.

7voto

John Hanley Points 11212

Windows 10 Professionnel

PHP 7.3.1

J'ai exécuté les commandes suivantes pour résoudre le problème sur mon bureau

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php

6voto

Sumit Wadhwa Points 1582

Cela semble être un problème avec php7.3, je suppose.

Si vous avez une version différente installée sur votre système, vous pouvez l'utiliser :

php7.1 /usr/bin/composer update // or wherever your composer is

ça a marché pour moi

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X