it-swarm.com.ru

Windows 8: .phar файлы, как вы хотите открыть

Я пытаюсь запустить composer в Windows с Wamp. Я установил composer с помощью командной строки cmd и теперь пытаюсь запустить "обновление композитора" для SDK. Однако, когда я набираю "composer.phar update", Windows спрашивает, какое приложение я хочу использовать для запуска этой программы. Я хочу, чтобы команда Prompt справилась с этим! Как мне просто запустить его через cmd, без появления этого окна "какое приложение"?

9
John Doe

Вы должны установить php.exe в качестве приложения по умолчанию для файлов phar.

15
Johni

.phar означает PHP Архив

Обычно .phar принимает некоторые аргументы, поэтому они предназначены для запуска из командной строки. Linux/bsd/Osx Shell или командная строка Windows.

Сценарии сценариев использования Linux .phar предполагают, что .phars копируются в некоторый/bin и переименовываются без расширения .phar, поэтому вы можете использовать архив php, как если бы вы использовали любую другую команду linux. Поэтому я рекомендую следующий способ сделать то же самое с Windows:

  1. Поместите все ваши файлы .phar в один каталог, например C:\php\phars
  2. Добавьте C:\php\phars в системные переменные окружения (щелкните правой кнопкой мыши мой компьютер-> свойства-> дополнительные параметры системы-> переменные среды)
  3. Запустите командную строку с повышенными правами (найдите в меню Пуск командную строку, затем щелкните правой кнопкой мыши команду "Запуск от имени администратора")
  4. Введите следующие команды, заменив путь C:\phpdev\php\php542\php.exe на полный путь к исполняемому файлу PHP
    ftype PharArchive = C:\phpdev\php\php542\php.exe "% 1"% *
    assoc .phar = PHARFile
    set PATHEXT =% PATHEXT% ;. PHAR

В следующий раз вы сможете запустить консоль Windows (keybard win + r и наберите cmd.exe) и наберите любой из ваших .phar как apigen.phar, а затем любую команду, и это будет работать

C:\Users\acosonic>apigen.phar help
Usage:
...

Arguments:
 command        The command to execute
 command_name   The command name (default: "help")

Options:
 --xml          To output help as XML
 --format       To output help in other formats (default: "txt")
 --raw          To output raw command help
 --help (-h)    Display this help message.
 --quiet (-q)   Do not output any message.
 --version (-V) Display this application version.

Help:
 The help command displays help for a given command:

   php C:\phpdev\phars\apigen.phar help list

 You can also output the help in other formats by using the --format option:

   php C:\phpdev\phars\apigen.phar help --format=xml list

 To display the list of available commands, please use the list command.

C:\Users\acosonic>

Таким образом, этот способ позволяет запускать архивы .phar в каталоге, где вам нужно работать, например, при создании документации в C:\myproject\controller без указания полного пути к .phar, как если бы он запускался без добавления его в путь Windows.

Чтобы объяснить, что сделали команды на шаге 4:

  1. Создано HKCR.phar → HKCR\PHARFile
  2. Создано HKCR\PHARFile\Shell\open\command = 'php.exe "% 1"% *' [REG_EXPAND_SZ]
  3. Расширенная HKCU\Environment\PATHEXT = '% PATHEXT% ;. PHAR' [REG_EXPAND_SZ]

* .phar обрабатывается как двоичный файл/скрипт, а выполнение * .phar работает до тех пор, пока файл * .phar находится в любом месте% PATH%

0
Aleksandar Pavić