Forum und email

Phar->getStub

(PECL phar:1.0.0-1.2.1)

Phar->getStub — Return the PHP loader or bootstrap stub of a Phar archive

Beschreibung

string Phar->getStub ( void )

One of the features that differentiates a Phar archive from other familiar archive formats like tar or zip is that a Phar archive is explicitly designed to be included to allow distributing an application or library that can be run without extraction directly from the archive. In order to accomplish this, Phar archives contain a bootstrap loader, or stub written in PHP that can perform any action.

Warnung

All stubs must end with __HALT_COMPILER(); or the file is not a valid Phar archive.

Rückgabewerte

Returns a string containing the contents of the bootstrap loader (stub) of the current Phar archive.

Fehler/Exceptions

Throws RuntimeException if it is not possible to read the stub from the Phar archive.

Beispiele

Example#1 A Phar->getStub() example

$p = new Phar('/path/to/my.phar', 0, 'my.phar');
echo $p->getStub();
echo "==NEXT==\n";
$p->setStub("<?php
function __autoload($class)
{
    include 
'phar://' str_replace('_''/'$class);
}
Phar::mapPhar('myphar.phar');
include 
'phar://myphar.phar/startup.php';
__HALT_COMPILER();
");
echo $p->getStub();

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

<?php __HALT_COMPILER();
==NEXT==
<?php
function __autoload($class)
{
    include 'phar://' . str_replace('_', '/', $class);
}
Phar::mapPhar('myphar.phar');
include 'phar://myphar.phar/startup.php';
__HALT_COMPILER();

Siehe auch