开发者

Building single-file executables with PHP / PHAR

I want to create a single-file executable of some PHP cli application, which should reside under eg. "/usr/local/bin" after it's packaged up as PHAR. This works quite well already, however there is something i am a little confused 开发者_StackOverflow社区with:

It seems, that on creation the destination file requires to have the ".phar" extension. when i want to create a phar without extension new Phar('/usr/local/bin/app', ...) an exception is thrown:

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 ...

However: when i create it with '.phar' extension and rename it after creation, everything seems to work. I wonder why that is, that i need the extension on create-time and if i might have any issues when i rename the file after it's creation?


I have only briefly used Phar, and renaming the extension for me seem to present no issues... but it has only been for simply packaging up some classes to be included in other projects.


You can add php's shebang (#!/usr/bin/php) to the begining of the Stub (with setStub) in orther to make your phar executable.

See How to make an executable phar? for more informations

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜