12

wamp を使用して Windows で composer を実行しようとしています。cmdプロンプトを使用してcomposerをインストールしましたが、SDKの「composer update」を実行しようとしています。しかし、「composer.phar update」と入力すると、このプログラムを実行するために使用するアプリを Windows が尋ねてきます。コマンドプロンプトで対処したい!この「どのアプリ」ウィンドウが表示されずに、cmdで実行するにはどうすればよいですか?

4

4 に答える 4

17

phar ファイルのデフォルト アプリケーションとして php.exe を設定する必要があります。

于 2013-10-16T20:55:45.063 に答える
5

.pharPHPアーカイブの略

通常.phar、s はいくつかの引数を取るため、コマンド プロンプトから実行することを意図しています。Linux/BSD/OS X シェルまたは Windows コマンド プロンプト。

Linuxの.pharユース ケース シナリオでは、.phars が /bin にコピーされ、名前が .phar 拡張子なしで変更されることを前提としているため、他の Linux コマンドを使用する場合と同じように php アーカイブを使用できます。したがって、Windowsで同じことを行うには、次の方法をお勧めします。

  1. 次のように、すべての.pharファイルを1つのディレクトリに配置しますC:\php\phars
  2. システム環境変数に追加C:\php\phars( my を右クリックComputer -> Properties -> Advanced System Settings -> Environment variables)
  3. 昇格したコマンド プロンプトを起動します ([スタート] メニューでコマンド プロンプトを見つけ、右クリックして を選択しますRun as Administrator) 。
  4. 次のコマンドを入力し、C:\phpdev\php\php542\php.exeパスを PHP 実行可能ファイルへのフル パスに置き換えます。
ftype PHARFile=C:\phpdev\php\php542\php.exe "%1" %*
assoc .phar=PHARFile
set PATHEXT=%PATHEXT%;.PHAR

次回は、Windowsコンソールを実行するだけで(キーボード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では、作業が必要なディレクトリでアーカイブを実行できます。たとえば、Windows パスに追加せずに実行するかのように、C:\myproject\controller完全なパスを指定せずにドキュメントを生成できます。.phar

ステップ 4 で実行したコマンドを説明するには、次のようにします。

  1. 作成されたマッピング HKCR.phar → HKCR\PHARFile
  2. HKCR\PHARFile\shell\open\command = 'php.exe "%1" %*' [REG_EXPAND_SZ] を作成しました
  3. 拡張 H​​KCU\Environment\PATHEXT = '%PATHEXT%;.PHAR' [REG_EXPAND_SZ]

*.pharはバイナリ/スクリプトのように扱われ、ファイルが のどこかにある*.phar限り実行が機能します。*.phar%PATH%

于 2016-12-28T07:22:15.203 に答える