Edit report at https://bugs.php.net/bug.php?id=54289&edit=1
ID: 54289 Comment by: cwei...@php.net Reported by: hpdl at oscommerce dot com Summary: Phar::extractTo() does not accept specific directories to be extracted Status: Open Type: Bug Package: PHAR related Operating System: MacOS 10.6.6 PHP Version: 5.3.5 Block user comment: N Private report: N New Comment: I can confirm that - extracting directories does not work: PHP Fatal error: Uncaught exception 'PharException' with message 'Phar Error: attempted to extract non-existent file "doc/" from phar "/home/cweiske/Dev/semanticscuttle/cwdev/dist/SemanticScuttle-0.98.X.phar"' in /home/cweiske/Dev/semanticscuttle/cwdev/phartest.php:3 Stack trace: #0 /home/cweiske/Dev/semanticscuttle/cwdev/phartest.php(3): Phar->extractTo('/tmp/test/', 'doc/', true) #1 {main} thrown in /home/cweiske/Dev/semanticscuttle/cwdev/phartest.php on line 3 Previous Comments: ------------------------------------------------------------------------ [2011-08-11 20:33:50] hpdl at oscommerce dot com Bug still exists in PHP 5.3.7RC5. ------------------------------------------------------------------------ [2011-03-17 10:44:06] hpdl at oscommerce dot com Description: ------------ Phar::extractTo() does not allow specific directories to be extracted. The documentation states the second parameter can be a file or directory to only extract the file or directory from the phar archive. Specific files can be extracted however an exception is thrown when a directory is passed. Test script: --------------- <?php $phar = new Phar('/tmp/test.phar'); $phar->buildFromDirectory('/path/to/source'); unset($phar); $phar = new Phar('/tmp/test.phar'); $phar->extractTo('/tmp/test/', 'subdir1/subdir2/', true); // throws exception // $phar->extractTo('/tmp/test/', 'subdir1/subdir2/file.txt', true); // works as intended ?> Expected result: ---------------- The specific directory should be extracted from the phar archive. Actual result: -------------- Fatal error: Uncaught exception 'PharException' with message 'Phar Error: attempted to extract non-existent file "subdir1/subdir2/" from phar "/tmp/test.phar"' in /phar-test.php on line 7 ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=54289&edit=1