Por favor, explique como criar stubs Phar do PHP
Estou tentando criar um aplicativo PHP CLI muito simples que possa ser executado como um phar arquivo na linha de comando:
# php myProject.phar
Isto é o que eu tentei até agora:
Meu projet Meu projeto está em um diretório chamadoMyProject
e possui esses dois arquivos:
|-- createPhar.php
`-- bootstrap.php
bootstrap.phpObootstrap.php
arquivo @ contém este:
<?php
print phpversion() . PHP_EOL;
print 'i am some script' . PHP_EOL;
Quando executo esse script na minha linha de comando do Ubuntu:
# cd MyProject
# php bootstrap.php
Recebo a seguinte saída:
5.3.2-1ubuntu4.9
i am some script
createPhar.phpO arquivo createPhar.php deve transformar o projeto em um arquivo Phar. Se parece com isso
<?php
$phar = new Phar('MyProject.phar');
$phar->addFile('bootstrap.php');
$phar->setStub( $phar->createDefaultStub('bootstrap.php') );
Quando executo esse script ...
# php createPhar.php
... um novo arquivo chamadoMyProject.phar
é criado no diretório do meu projet
|-- bootstrap.php
|-- createPhar.php
`-- MyProject.phar
Agora aqui está o problemaQuando executo o arquivo phar ...
# php MyProject.phar
... Espero ver o mesmo resultado que obtive quando executei obootstrap.php
roteiro
Em vez disso, não vejo nada. Nenhuma saída. Isso implica que meubootstrap.php
script @ não está sendo incluído pelo stub padrão criado por$phar->createDefaultStub('bootstrap.php')
Acho que estou entendendo mal como os Phars e seus stubs estão sendo criados. Você poderia, por favor, explicar onde eu erre