xampp — Установка зависимостей проекта PHP с помощью Composer

Я пытаюсь установить Nette2.3.1 с помощью Composer (на XAMPP). В папке c: \ x \ php я запускаю эту команду:

composer create-project nette/sandbox myprojectname

Когда я это делаю, получаю следующую ошибку:

[Seld \ JsonLint \ ParsingException] «c: \ x \ php \ php.exe» не содержит
допустимая ошибка анализа JSON в строке 1: MZÉ ♥ ♦ ╕ ^ Ожидается одно из:
‘STRING’, ‘NUMBER’, ‘NULL’, ‘TRUE’, ‘FALSE’, ‘{‘, ‘[‘

Я перепробовал все эти варианты безрезультатно:

  1. удалил каталог проекта и попробовал
  2. запустил эту команду внутри папки htdocs
  3. запускал это через консоль PHP JetBrains
  4. убедился, что версия Composer самая последняя

Что случилось?

Это было то, что пошло не так:

  1. Я установил xampp во время работы антивируса — я получил предупреждение, но решил проигнорировать это. Следовательно php.exe был поврежден и испортил все это для меня.

  2. Переменные PATH под моим пользователем не были обновлены путем php.exe. Хотя системная переменная обновляется, для меня все еще остается загадкой, почему это стало проблемой.

Как я сделал, чтобы исправить это:

В общем, удалил xampp, очистил кеш композера и установил wamp и создал проект для песочницы nette. Это работало нормально. Справедливости ради, xampp работал бы так же хорошо, если бы я установил его с отключенным av и должным образом обновленными переменными PATH.

1

Решение

Я думаю, что ваш PATH композитора или ярлык / пакетный файл не работает, потому что он пытается прочитать файл php.exe как файл JSON.

Попробуйте полностью удалить composer и начните с чистой установки

  1. Загрузите и установите композитор, используя автоматический установщик. Он настраивает PATH для вас, так что вы можете просто вызвать composer из любого места.
  2. Закройте терминал командной строки и запустите новый (важно).
  3. Попробуй запустить composer create-project nette/sandbox myprojectname команда в любом каталоге

Документация — Windows установка композитора

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]