mirror of
https://github.com/php/php-src.git
synced 2024-12-12 19:33:31 +08:00
8ad0c6d543
- fix possible leak in statName and statIndex - add addEmptyDir() method - add zip_stat_init,zip_clear_error and zip_file_clear_error - add tests - Fix protos (Hannes) - setComment return value on success (Hannes)
96 lines
1.9 KiB
PHP
96 lines
1.9 KiB
PHP
--TEST--
|
|
extractTo
|
|
--SKIPIF--
|
|
<?php
|
|
/* $Id$ */
|
|
if(!extension_loaded('zip')) die('skip');
|
|
?>
|
|
--FILE--
|
|
<?php
|
|
$dirname = dirname(__FILE__) . '/';
|
|
$file = $dirname . 'test_with_comment.zip';
|
|
include $dirname . 'utils.inc';
|
|
$zip = new ZipArchive;
|
|
if ($zip->open($file) !== TRUE) {
|
|
echo "open failed.\n";
|
|
exit('failed');
|
|
}
|
|
|
|
$zip->extractTo($dirname . '__oo_extract_tmp');
|
|
if (!is_dir($dirname . '__oo_extract_tmp')) {
|
|
echo "failed. mkdir\n";
|
|
}
|
|
|
|
if (!is_dir($dirname .'__oo_extract_tmp/foobar')) {
|
|
echo "failed. mkdir foobar\n";
|
|
}
|
|
|
|
if (!file_exists($dirname . '__oo_extract_tmp/foobar/baz')) {
|
|
echo "failed. extract foobar/baz\n";
|
|
} else {
|
|
echo file_get_contents($dirname . '__oo_extract_tmp/foobar/baz') . "\n";
|
|
}
|
|
|
|
if (!file_exists($dirname . '__oo_extract_tmp/bar')) {
|
|
echo "failed. bar file\n";
|
|
} else {
|
|
echo file_get_contents($dirname . '__oo_extract_tmp/bar') . "\n";
|
|
}
|
|
|
|
if (!file_exists($dirname . '__oo_extract_tmp/foo')) {
|
|
echo "failed. foo file\n";
|
|
} else {
|
|
echo file_get_contents($dirname . '__oo_extract_tmp/foo') . "\n";
|
|
}
|
|
|
|
|
|
/* extract one file */
|
|
$zip->extractTo($dirname . '__oo_extract_tmp', 'bar');
|
|
if (!file_exists($dirname . '__oo_extract_tmp/bar')) {
|
|
echo "failed. extract bar file\n";
|
|
} else {
|
|
echo file_get_contents($dirname . '__oo_extract_tmp/bar') . "\n";
|
|
}
|
|
|
|
/* extract two files */
|
|
$zip->extractTo($dirname . '__oo_extract_tmp', array('bar','foo'));
|
|
if (!file_exists($dirname . '__oo_extract_tmp/bar')) {
|
|
echo "failed. extract bar file\n";
|
|
} else {
|
|
echo file_get_contents($dirname . '__oo_extract_tmp/bar') . "\n";
|
|
}
|
|
if (!file_exists($dirname . '__oo_extract_tmp/foo')) {
|
|
echo "failed. extract foo file\n";
|
|
} else {
|
|
echo file_get_contents($dirname . '__oo_extract_tmp/foo') . "\n";
|
|
}
|
|
|
|
rmdir_rf($dirname . '__oo_extract_tmp');
|
|
?>
|
|
--EXPECTF--
|
|
blabla laber rababer sülz
|
|
|
|
bar
|
|
|
|
foo
|
|
|
|
|
|
bar
|
|
|
|
bar
|
|
|
|
foo
|
|
--UEXPECTF--
|
|
blabla laber rababer sülz
|
|
|
|
bar
|
|
|
|
foo
|
|
|
|
|
|
bar
|
|
|
|
bar
|
|
|
|
foo
|