PHPCon Poland 2024


(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)

Phar::setDefaultStubUsed to set the PHP loader or bootstrap stub of a Phar archive to the default loader


public Phar::setDefaultStub(?string $index = null, ?string $webIndex = null): bool


This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.

This method is a convenience method that combines the functionality of Phar::createDefaultStub() and Phar::setStub().



Relative path within the phar archive to run if accessed on the command-line


Relative path within the phar archive to run if accessed through a web browser

Return Values

Returns true on success or false on failure.


UnexpectedValueException is thrown if phar.readonly is enabled in php.ini. PharException is thrown if any problems are encountered flushing changes to disk.


Version Description
8.0.0 webIndex is nullable now.


Example #1 A Phar::setDefaultStub() example

try {
$phar = new Phar('myphar.phar');
$phar->setDefaultStub('cli.php', 'web/index.php');
// this is the same as:
// $phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
} catch (Exception $e) {
// handle errors

See Also

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top