mirror of
https://github.com/php/php-src.git
synced 2024-09-25 03:47:26 +00:00
7540adf058
the new default stub allows creation of phars that run identically 1) with Phar extension 2) without Phar extension 3) extracted to disk from the phar this makes the default phar format quite interesting as it eliminates the only drawback of the extension
45 lines
941 B
PHP
45 lines
941 B
PHP
--TEST--
|
|
Phar: attempt to create a Phar with relative path
|
|
--SKIPIF--
|
|
<?php if (!extension_loaded("phar")) die("skip"); ?>
|
|
--INI--
|
|
phar.require_hash=0
|
|
phar.readonly=0
|
|
--FILE--
|
|
<?php
|
|
chdir(dirname(__FILE__));
|
|
try {
|
|
$p = new Phar('brandnewphar.phar');
|
|
$p['file1.txt'] = 'hi';
|
|
var_dump(strlen($p->getStub()));
|
|
$p->setStub("<?php
|
|
function __autoload(\$class)
|
|
{
|
|
include 'phar://' . str_replace('_', '/', \$class);
|
|
}
|
|
Phar::mapPhar('brandnewphar.phar');
|
|
include 'phar://brandnewphar.phar/startup.php';
|
|
__HALT_COMPILER();
|
|
?>");
|
|
var_dump($p->getStub());
|
|
} catch (Exception $e) {
|
|
echo $e->getMessage() . "\n";
|
|
}
|
|
?>
|
|
===DONE===
|
|
--CLEAN--
|
|
<?php
|
|
unlink(dirname(__FILE__) . '/brandnewphar.phar');
|
|
?>
|
|
--EXPECT--
|
|
int(4461)
|
|
string(200) "<?php
|
|
function __autoload($class)
|
|
{
|
|
include 'phar://' . str_replace('_', '/', $class);
|
|
}
|
|
Phar::mapPhar('brandnewphar.phar');
|
|
include 'phar://brandnewphar.phar/startup.php';
|
|
__HALT_COMPILER(); ?>
|
|
"
|
|
===DONE===
|