# Phar::createDefaultStub

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

Phar::createDefaultStub — Create a phar-file format specific stub

### Description

final public static Phar::createDefaultStub ([ string `$indexfile` [, string `$webindexfile` ]] ) : string

This method is intended for creation of phar-file format-specific stubs, and is not intended for use with tar- or zip-based phar archives.

Phar archives contain a bootstrap loader, or `stub` written in PHP that is executed when the archive is executed in PHP either via include:

`<?php
include 'myphar.phar';
?>`
or by simple execution:

    php myphar.phar

This method provides a simple and easy method to create a stub that will run a startup file from the phar archive. In addition, different files can be specified for running the phar archive from the command line versus through a web server. The loader stub also calls Phar::interceptFileFuncs() to allow easy bundling of a PHP application that accesses the file system. If the phar extension is not present, the loader stub will extract the phar archive to a temporary directory and then operate on the files. A shutdown function erases the temporary files on exit.

### Return Values

Returns a string containing the contents of a customized bootstrap loader (stub) that allows the created Phar archive to work with or without the Phar extension enabled.

### Errors/Exceptions

Throws UnexpectedValueException if either parameter is longer than 400 bytes.

### Examples

Example #1 A Phar::createDefaultStub() example

`<?php
try {
$phar = new Phar('myphar.phar');
$phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
} catch (Exception $e) {
// handle errors
}
?>`

### See Also

- Phar::setStub() - Used to set the PHP loader or bootstrap stub of a Phar archive
- Phar::getStub() - Return the PHP loader or bootstrap stub of a Phar archive