--TEST-- Phar: Phar::extractTo() - .phar safety --SKIPIF-- --INI-- phar.readonly=0 --FILE-- setDefaultStub(); $phar->setAlias('fred'); $phar['file1.txt'] = 'hi'; $phar['file2.txt'] = 'hi2'; $phar['subdir/ectory/file.txt'] = 'hi3'; $phar->mount($pname . '/mount', __FILE__); $phar->addEmptyDir('one/level'); $phar->extractTo(dirname(__FILE__) . '/extract', 'mount'); $phar->extractTo(dirname(__FILE__) . '/extract'); $out = array(); foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator(dirname(__FILE__) . '/extract', 0x00003000), RecursiveIteratorIterator::CHILD_FIRST) as $path => $file) { $extracted[] = $path; } sort($extracted); foreach ($extracted as $out) { echo "$out\n"; } ?> ===DONE=== --CLEAN-- --EXPECTF-- %sextract%cfile1.txt %sextract%cfile2.txt %sextract%cone %sextract%csubdir %sextract%csubdir%cectory %sextract%csubdir%cectory%cfile.txt ===DONE===