Предупреждение: переключение таргетинга "продолжить" эквивалентно "перерыву". Вы имели в виду использовать "продолжить 2"? - программирование
Подтвердить что ты не робот

Предупреждение: переключение таргетинга "продолжить" эквивалентно "перерыву". Вы имели в виду использовать "продолжить 2"?

У меня есть php7.3 и symfony2.8 Когда я пытаюсь создать классы с помощью консоли, я получаю эту ошибку:

[Symfony\Component\Debug\Exception\ContextErrorException] Предупреждение: переключение таргетинга "продолжить" эквивалентно "прерыванию". Вы имели в виду использовать "продолжить 2"?

4b9b3361

Ответ 1

У меня та же проблема и эта ошибка тоже, но в моем случае эта ошибка отображается, когда я пытаюсь запустить composer install или composer update.

и я решаю эту проблему, запустив composer self-update. это работает на моем проекте.

Ответ 2

Мне кажется, что проблема заключается в обратной несовместимости с PHP 7.3 для ключевого слова continue в операторах Switch. Взгляните на раздел "Предупреждение о проблемах с переключателем таргетинга" в разделе " Несовместимые изменения в прошлом".

Я столкнулся с той же проблемой с Symfony 3.3, используя PHP 7.3, и понижение до PHP 7.2 устранило предупреждение.

Ответ 3

Я обновил до PHP 7.3, и ни один из них не работал для меня, прежде чем я использовал,

sudo wget https://getcomposer.org/download/1.8.0/composer.phar -O /usr/local/bin/composer && sudo chmod 755 /usr/local/bin/composer

Это просто зависимость от версии. PHP 7.3

и обновление композитора работало как шарм!

Ответ 4

Может быть, ваш композитор устарел. Ниже приведены шаги, чтобы избавиться от ошибки.

Note: For Windows professionals, Only Step2 и Step3 is needed и done.


  Шаг1

Удалить композитора:

sudo apt-get remove composer

Step2

Загрузите композитор:

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

Step3

Запустите файл composer-setup.php

php composer-setup.php

Step4

Наконец переместите композитора:

sudo mv composer.phar /usr/local/bin/composer  


Ваш композитор должен быть обновлен сейчас. Чтобы проверить это, запустите команду:

композитор

Вы можете удалить загруженный композитор командой php

php -r "unlink('composer-setup.php');"

Ответ 5

Windows 10 Professional

PHP 7.3.1

Я выполнил эти команды, чтобы исправить проблему на рабочем столе

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

Ответ 6

Или загрузите composer.phar с сайта: " https://getcomposer.org/download/ " (загрузка вручную) и используйте команду:

php composer.phar require your/package

Ответ 7

composer self-update composer install

Теперь это должно работать

enter image description here

Ответ 8

В моем случае php был обновлён с php7.2.22 до php7.3.9.

поэтому пришлось понизить cli php, так как композитор запускается на терминале

//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

дополнительная информация, если вы используете apache, не забывайте хранить и cli, и apache в одной и той же версии. в моем случае мне пришлось понизить рейтинг

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

Это будет работать с другими версиями. так что не стесняйтесь переключаться между версиями. просто замените номера версий соответственно

Ответ 9

  На Debian 9 php7.3 ответ выше, вставленный ниже, работал отлично.


sudo wget https://getcomposer.org/download/1.8.0/composer.phar -O /usr/local/bin/composer && sudo chmod 755 /usr/local/bin/composer

Ответ 10

Я была такая же проблема. но исправили это, загрузив composer & установка с нуля.

Ответ 11

  1. В вашем проекте найдите файл UnitOfWork.php
  2. В строке 2636 UnitOfWork.php и в строке 2665 UnitOfWork.php:
  3. Замените "continue" на "continue 2", затем в консоли выполните эту команду

    composer update

Ответ 12

Вам нужно только заменить вхождение "continue" на "continue 2" в указанном файле. Это сработало для меня.