Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

phar.interceptfilefuncs(3) [php man page]

PHAR.INTERCEPTFILEFUNCS(3)						 1						PHAR.INTERCEPTFILEFUNCS(3)

Phar::interceptFileFuncs - instructs phar to intercept fopen, file_get_contents, opendir, and all of the stat-related functions

SYNOPSIS
finalpublicstatic void Phar::interceptFileFuncs (void ) DESCRIPTION
instructs phar to intercept fopen(3), readfile(3), file_get_contents(3), opendir(3), and all of the stat-related functions. If any of these functions is called from within a phar archive with a relative path, the call is modified to access a file within the phar archive. Absolute paths are assumed to be attempts to load external files from the filesystem. This function makes it possible to run PHP applications designed to run off of a hard disk as a phar application. PARAMETERS
No parameters. RETURN VALUES
EXAMPLES
Example #1 A Phar.interceptFileFuncs(3) example <?php Phar::interceptFileFuncs(); include 'phar://' . __FILE__ . '/file.php'; ?> Assuming that this phar is at /path/to/myphar.phar and it contains file.php and file2.txt, if file.php contains this code: Example #2 A Phar.interceptFileFuncs(3) example <?php echo file_get_contents('file2.txt'); ?> Normally PHP would search the current directory for file2.txt, which would translate as the directory of file.php, or the current direc- tory of a command-line user. Phar.interceptFileFuncs(3) instructs PHP to consider the current directory to be phar:///path/to/myphar.phar/ and so opens phar:///path/to/myphar.phar/file2.txt in the above example code. PHP Documentation Group PHAR.INTERCEPTFILEFUNCS(3)

Check Out this Related Man Page

PHAR.SETSTUB(3) 							 1							   PHAR.SETSTUB(3)

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

SYNOPSIS
public bool Phar::setStub (string $stub, [int $len = -1]) DESCRIPTION
Note 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 used to add a PHP bootstrap loader stub to a new Phar archive, or to replace the loader stub in an existing Phar archive. The loader stub for a Phar archive is used whenever an archive is included directly as in this example: <?php include 'myphar.phar'; ?> The loader is not accessed when including a file through the phar stream wrapper like so: <?php include 'phar://myphar.phar/somefile.php'; ?> PARAMETERS
o $stub - A string or an open stream handle to use as the executable stub for this phar archive. o $len - RETURN VALUES
Returns TRUE on success or FALSE on failure. ERRORS
/EXCEPTIONS UnexpectedValueException is thrown if phar.readonly is enabled in php.ini. PharException is thrown if any problems are encountered flushing changes to disk. EXAMPLES
Example #1 A Phar.setStub(3) example <?php try { $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar'); $p['a.php'] = '<?php var_dump("Hello");'; $p->setStub('<?php var_dump("First"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); ?>'); include 'phar://brandnewphar.phar/a.php'; var_dump($p->getStub()); $p['b.php'] = '<?php var_dump("World");'; $p->setStub('<?php var_dump("Second"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); ?>'); include 'phar://brandnewphar.phar/b.php'; var_dump($p->getStub()); } catch (Exception $e) { echo 'Write operations failed on brandnewphar.phar: ', $e; } ?> The above example will output: string(5) "Hello" string(82) "<?php var_dump("First"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); ?>" string(5) "World" string(83) "<?php var_dump("Second"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); ?>" CHANGELOG
+--------+------------------------+ |Version | | | | | | | Description | | | | +--------+------------------------+ | 5.4.0 | | | | | | | Added $len parameter. | | | | +--------+------------------------+ SEE ALSO
Phar.getStub(3), Phar.createDefaultStub(3). PHP Documentation Group PHAR.SETSTUB(3)
Man Page