|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2011-03-17 10:44 UTC] 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
PatchesPull Requests
Pull requests:
HistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sun Nov 02 22:00:01 2025 UTC |
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