2011-07-19 49 views
0

我想创建一些PHP cli应用程序的单文件可执行文件,它应该位于例如。 “/ usr/local/bin”打包为PHAR之后。这工作已经很好,但有一些我有点困惑:用PHP/PHAR构建单文件可执行文件

看来,在创建目标文件需要具有“.phar”扩展名。当我想没有扩展new Phar('/usr/local/bin/app', ...)创建药业抛出一个异常:

Fatal error: Uncaught exception 'UnexpectedValueException' with message 
'Cannot create phar '/usr/local/bin/app', file extension (or combination) not 
recognised' in /Users/harald/... on line ... 

但是:当我与“.phar”扩展创建和创建后重命名它,一切似乎工作。我想知道这是为什么,我需要在创建时的扩展,如果我创建后重命名文件时可能有任何问题?

回答

1

我只简单地使用过Phar,并且为我改名扩展似乎没有问题......但它只是简单地打包了一些要包含在其他项目中的类。

+1

后彻底测试中,我得出的结论,确实有没有重命名的包问题。似乎该后缀仅用于PHAR扩展来检测应该创建什么样的包。谢谢! – aurora

1

您可以将PHP的shebang(#!/usr/bin/php)添加到Stub(带有setStub)的开始位置或其他位置,以使您的phar可执行。

How to make an executable phar?更多信息

相关问题