Windows 8:.phar文件,您想如何打开

时间:2013-10-16 20:52:56

标签: php cmd composer-php wamp

我正在尝试使用wamp在Windows上运行composer。我使用cmd提示符安装了composer,现在我正在尝试为SDK运行“composer update”。但是,当我输入“composer.phar update”时,windows会询问我想用什么应用来运行这个程序。我想要命令提示符来处理它!如何在没有这个“应用程序”窗口的情况下通过cmd运行它?

3 个答案:

答案 0 :(得分:15)

您必须将php.exe设置为phar文件的默认应用程序。

答案 1 :(得分:0)

.phar代表PHP档案

通常.phar会接受一些参数,因此它们应该从命令提示符运行。 Linux / bsd / Osx shell或Windows命令提示符。

Linux .phar用例场景假设.phars被复制到某个/ bin并重命名为没有.phar扩展名,所以你可以像使用任何其他linux命令一样使用php存档。所以我建议按照以下方式对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
    设置PATHEXT =%PATHEXT%;。PHAR
  5. 下次你应该只能运行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的完整路径,就好像如果它运行而不将其添加到窗口路径。

    解释步骤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]
    4. *。phar被视为二进制/脚本,只要* .phar文件位于%PATH%

      中的任何位置,* .phar执行就会起作用

答案 2 :(得分:0)

保持简单。与其更改 .phar 的默认程序(这在 Windows 中并不总是那么容易),不如尝试在您的命令前键入“php”。

php composer.phar update