0

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

看来,在创建目标文件时需要具有“.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”扩展名创建它并在创建后重命名它时,一切似乎都正常。我想知道为什么会这样,我需要在创建时进行扩展,以及在创建文件后重命名文件时是否有任何问题?

4

2 回答 2

1

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

于 2011-07-19T10:17:56.870 回答
1

您可以将 php 的 shebang ( #!/usr/bin/php) 添加到存根(使用 setStub)的开头,以使您的 phar 可执行。

请参阅如何制作可执行的 phar?了解更多信息

于 2012-06-18T11:58:24.640 回答