mirror of
https://github.com/php/php-src.git
synced 2024-10-21 08:22:42 +00:00
141 lines
2.7 KiB
PHP
Executable File
141 lines
2.7 KiB
PHP
Executable File
--TEST--
|
|
Phar object: iterator & entries
|
|
--SKIPIF--
|
|
<?php
|
|
if (!extension_loaded("phar")) die("skip");
|
|
if (version_compare(PHP_VERSION, "6.0", ">")) die("skip pre-unicode version of PHP required");
|
|
if (!extension_loaded("spl")) die("skip SPL not available");
|
|
?>
|
|
--INI--
|
|
phar.readonly=1
|
|
phar.require_hash=0
|
|
--FILE--
|
|
<?php
|
|
|
|
require_once 'files/phar_oo_test.inc';
|
|
|
|
$phar = new Phar($fname);
|
|
$phar->setInfoClass('SplFileInfo');
|
|
foreach($phar as $name => $ent)
|
|
{
|
|
var_dump(str_replace(str_replace('\\', '/', dirname(__FILE__)), '*', $name));
|
|
var_dump($ent->getFilename());
|
|
var_dump($ent->getSize());
|
|
var_dump($ent->getType());
|
|
var_dump($ent->isWritable());
|
|
var_dump($ent->isReadable());
|
|
var_dump($ent->isExecutable());
|
|
var_dump($ent->isFile());
|
|
var_dump($ent->isDir());
|
|
var_dump($ent->isLink());
|
|
var_dump($ent->getCTime());
|
|
var_dump($ent->getMTime());
|
|
var_dump($ent->getATime());
|
|
}
|
|
|
|
echo "==RECURSIVE==\n";
|
|
|
|
$phar = new Phar($fname);
|
|
foreach(new RecursiveIteratorIterator($phar) as $name => $ent)
|
|
{
|
|
var_dump(str_replace(str_replace('\\', '/', dirname(__FILE__)), '*', $name));
|
|
var_dump(str_replace('\\', '/', $ent->getFilename()));
|
|
var_dump($ent->getCompressedSize());
|
|
var_dump($ent->isCRCChecked());
|
|
var_dump($ent->isCRCChecked() ? $ent->getCRC32() : NULL);
|
|
var_dump($ent->getPharFlags());
|
|
}
|
|
|
|
?>
|
|
===DONE===
|
|
--CLEAN--
|
|
<?php
|
|
unlink(dirname(__FILE__) . '/files/phar_oo_test.phar.php');
|
|
__halt_compiler();
|
|
?>
|
|
--EXPECTF--
|
|
string(42) "phar://*/files/phar_oo_test.phar.php%ca.php"
|
|
string(5) "a.php"
|
|
int(32)
|
|
string(4) "file"
|
|
bool(false)
|
|
bool(true)
|
|
bool(false)
|
|
bool(true)
|
|
bool(false)
|
|
bool(false)
|
|
int(%d)
|
|
int(%d)
|
|
int(%d)
|
|
string(38) "phar://*/files/phar_oo_test.phar.php%cb"
|
|
string(1) "b"
|
|
int(0)
|
|
string(3) "dir"
|
|
bool(false)
|
|
bool(true)
|
|
bool(false)
|
|
bool(false)
|
|
bool(true)
|
|
bool(false)
|
|
int(%d)
|
|
int(%d)
|
|
int(%d)
|
|
string(42) "phar://*/files/phar_oo_test.phar.php%cb.php"
|
|
string(5) "b.php"
|
|
int(32)
|
|
string(4) "file"
|
|
bool(false)
|
|
bool(true)
|
|
bool(false)
|
|
bool(true)
|
|
bool(false)
|
|
bool(false)
|
|
int(%d)
|
|
int(%d)
|
|
int(%d)
|
|
string(42) "phar://*/files/phar_oo_test.phar.php%ce.php"
|
|
string(5) "e.php"
|
|
int(32)
|
|
string(4) "file"
|
|
bool(false)
|
|
bool(true)
|
|
bool(false)
|
|
bool(true)
|
|
bool(false)
|
|
bool(false)
|
|
int(%d)
|
|
int(%d)
|
|
int(%d)
|
|
==RECURSIVE==
|
|
string(42) "phar://*/files/phar_oo_test.phar.php%ca.php"
|
|
string(5) "a.php"
|
|
int(32)
|
|
bool(false)
|
|
NULL
|
|
int(0)
|
|
string(44) "phar://*/files/phar_oo_test.phar.php/b%cc.php"
|
|
string(5) "c.php"
|
|
int(34)
|
|
bool(false)
|
|
NULL
|
|
int(0)
|
|
string(44) "phar://*/files/phar_oo_test.phar.php/b%cd.php"
|
|
string(5) "d.php"
|
|
int(34)
|
|
bool(false)
|
|
NULL
|
|
int(0)
|
|
string(42) "phar://*/files/phar_oo_test.phar.php%cb.php"
|
|
string(5) "b.php"
|
|
int(32)
|
|
bool(false)
|
|
NULL
|
|
int(0)
|
|
string(42) "phar://*/files/phar_oo_test.phar.php%ce.php"
|
|
string(5) "e.php"
|
|
int(32)
|
|
bool(false)
|
|
NULL
|
|
int(0)
|
|
===DONE===
|