如何制作可执行的phar?

时间:2012-06-18 11:57:43

标签: php shebang phar

我想直接通过foo.phar <params>而不是php foo.phar <params>启动一个phar脚本作为可执行文件。

1 个答案:

答案 0 :(得分:14)

通过修改默认存根(添加对应于php的shebang)很容易。

// start buffering. Mandatory to modify stub.
$phar->startBuffering();

// Get the default stub. You can create your own if you have specific needs
$defaultStub = $phar->createDefaultStub('index.php');

// Adding files
$phar->buildFromDirectory(__DIR__, '/\.php$/');

// Create a custom stub to add the shebang
$stub = "#!/usr/bin/php \n".$defaultStub;

// Add the stub
$phar->setStub($stub);

$phar->stopBuffering();