Phar::mapPhar

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

Phar::mapPharReads the currently executed file (a phar) and registers its manifest

˵��

final public static Phar::mapPhar ([ string $alias [, int $dataoffset = 0 ]] ) : bool

This static method can only be used inside a Phar archive's loader stub in order to initialize the phar when it is directly executed, or when it is included in another script.

����

alias

The alias that can be used in phar:// URLs to refer to this archive, rather than its full path.

dataoffset

Unused variable, here for compatibility with PEAR's PHP_Archive.

����ֵ

�ɹ�ʱ���� TRUE�� ������ʧ��ʱ���� FALSE��

�����쳣

PharException is thrown if not called directly within PHP execution, if no __HALT_COMPILER(); token is found in the current source file, or if the file cannot be opened for reading.

����

Example #1 A Phar::mapPhar() example

mapPhar should be used only inside a phar's loader stub. Use loadPhar to load an external phar into memory.

Here is a sample Phar loader stub that uses mapPhar.

<?php
function __autoload($class)
{
    include 
'phar://me.phar/' str_replace('_''/'$class) . '.php';
}
try {
    
Phar::mapPhar('me.phar');
    include 
'phar://me.phar/startup.php';
} catch (
PharException $e) {
    echo 
$e->getMessage();
    die(
'Cannot initialize Phar');
}
__HALT_COMPILER();

�μ�