我想直接通过foo.phar <params>
而不是php foo.phar <params>
启动一个phar脚本作为可执行文件。
答案 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();