Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : Phar archive stream and classes : Phar->getStub

Phar->getStub

Return the PHP loader or bootstrap stub of a Phar archive ()
string Phar->getStub ( )

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.

Warning:

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

Return Values

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

Errors/Exceptions

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

Examples

Example 1804. 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();

The above example will output:

<?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();


See Also
Phar->setStub()

Change Language


Follow Navioo On Twitter
Phar::apiVersion
Phar::canCompress
Phar::canWrite
Phar->compressAllFilesBZIP2
Phar->compressAllFilesGZ
Phar::__construct
Phar->count
Phar->getMetaData
Phar->getModified
Phar->getSignature
Phar->getStub
Phar->getVersion
Phar->isBuffering
Phar::loadPhar
Phar::mapPhar
Phar::offsetExists
Phar::offsetGet
Phar::offsetSet
Phar::offsetUnset
Phar->setMetaData
Phar->setStub
Phar->startBuffering
Phar->stopBuffering
Phar->uncompressAllFiles
PharFileInfo->chmod
PharFileInfo::__construct
PharFileInfo->getCompressedSize
PharFileInfo->getCRC32
PharFileInfo->getMetaData
PharFileInfo->getPharFlags
PharFileInfo->isCompressed
PharFileInfo->isCompressedBZIP2
PharFileInfo->isCompressedGZ
PharFileInfo->isCRCChecked
PharFileInfo->setCompressedBZIP2
PharFileInfo->setCompressedGZ
PharFileInfo->setMetaData
PharFileInfo->setUncompressed
eXTReMe Tracker