12 changed files with 2564 additions and 0 deletions
-
101ext/standard/tests/dir/scandir_basic.phpt
-
60ext/standard/tests/dir/scandir_error1.phpt
-
58ext/standard/tests/dir/scandir_error2.phpt
-
423ext/standard/tests/dir/scandir_variation1.phpt
-
462ext/standard/tests/dir/scandir_variation2.phpt
-
371ext/standard/tests/dir/scandir_variation3.phpt
-
271ext/standard/tests/dir/scandir_variation4.phpt
-
115ext/standard/tests/dir/scandir_variation5.phpt
-
97ext/standard/tests/dir/scandir_variation6.phpt
-
262ext/standard/tests/dir/scandir_variation7.phpt
-
239ext/standard/tests/dir/scandir_variation8.phpt
-
105ext/standard/tests/dir/scandir_variation9.phpt
@ -0,0 +1,101 @@ |
|||
--TEST-- |
|||
Test scandir() function : basic functionality |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Test basic functionality of scandir() |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : basic functionality ***\n"; |
|||
|
|||
// include file.inc for create_files function |
|||
include (dirname(__FILE__) . '/../file/file.inc'); |
|||
|
|||
// set up directory |
|||
$directory = dirname(__FILE__) . '/scandir_basic'; |
|||
mkdir($directory); |
|||
@create_files($directory, 3); |
|||
|
|||
echo "\n-- scandir() with mandatory arguments --\n"; |
|||
var_dump(scandir($directory)); |
|||
|
|||
echo "\n-- scandir() with all arguments --\n"; |
|||
$sorting_order = 1; |
|||
$context = stream_context_create(); |
|||
var_dump(scandir($directory, $sorting_order, $context)); |
|||
|
|||
delete_files($directory, 3); |
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$directory = dirname(__FILE__) . '/scandir_basic'; |
|||
rmdir($directory); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : basic functionality *** |
|||
|
|||
-- scandir() with mandatory arguments -- |
|||
array(5) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
[2]=> |
|||
string(9) "file1.tmp" |
|||
[3]=> |
|||
string(9) "file2.tmp" |
|||
[4]=> |
|||
string(9) "file3.tmp" |
|||
} |
|||
|
|||
-- scandir() with all arguments -- |
|||
array(5) { |
|||
[0]=> |
|||
string(9) "file3.tmp" |
|||
[1]=> |
|||
string(9) "file2.tmp" |
|||
[2]=> |
|||
string(9) "file1.tmp" |
|||
[3]=> |
|||
string(2) ".." |
|||
[4]=> |
|||
string(1) "." |
|||
} |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : basic functionality *** |
|||
|
|||
-- scandir() with mandatory arguments -- |
|||
array(5) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
[2]=> |
|||
unicode(9) "file1.tmp" |
|||
[3]=> |
|||
unicode(9) "file2.tmp" |
|||
[4]=> |
|||
unicode(9) "file3.tmp" |
|||
} |
|||
|
|||
-- scandir() with all arguments -- |
|||
array(5) { |
|||
[0]=> |
|||
unicode(9) "file3.tmp" |
|||
[1]=> |
|||
unicode(9) "file2.tmp" |
|||
[2]=> |
|||
unicode(9) "file1.tmp" |
|||
[3]=> |
|||
unicode(2) ".." |
|||
[4]=> |
|||
unicode(1) "." |
|||
} |
|||
===DONE=== |
|||
@ -0,0 +1,60 @@ |
|||
--TEST-- |
|||
Test scandir() function : error conditions - Incorrect number of args |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Pass incorrect number of arguments to scandir() to test behaviour |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : error conditions ***\n"; |
|||
|
|||
// Zero arguments |
|||
echo "\n-- Testing scandir() function with Zero arguments --\n"; |
|||
var_dump( scandir() ); |
|||
|
|||
//Test scandir with one more than the expected number of arguments |
|||
echo "\n-- Testing scandir() function with more than expected no. of arguments --\n"; |
|||
$dir = dirname(__FILE__) . '/scandir_error'; |
|||
mkdir($dir); |
|||
$sorting_order = 10; |
|||
$context = stream_context_create(); |
|||
$extra_arg = 10; |
|||
var_dump( scandir($dir, $sorting_order, $context, $extra_arg) ); |
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$directory = dirname(__FILE__) . '/scandir_error'; |
|||
rmdir($directory); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : error conditions *** |
|||
|
|||
-- Testing scandir() function with Zero arguments -- |
|||
|
|||
Warning: scandir() expects at least 1 parameter, 0 given in %s on line %d |
|||
NULL |
|||
|
|||
-- Testing scandir() function with more than expected no. of arguments -- |
|||
|
|||
Warning: scandir() expects at most 3 parameters, 4 given in %s on line %d |
|||
NULL |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : error conditions *** |
|||
|
|||
-- Testing scandir() function with Zero arguments -- |
|||
|
|||
Warning: scandir() expects at least 1 parameter, 0 given in %s on line %d |
|||
NULL |
|||
|
|||
-- Testing scandir() function with more than expected no. of arguments -- |
|||
|
|||
Warning: scandir() expects at most 3 parameters, 4 given in %s on line %d |
|||
NULL |
|||
===DONE=== |
|||
@ -0,0 +1,58 @@ |
|||
--TEST-- |
|||
Test scandir() function : error conditions - Non-existent directory |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Pass a directory that does not exist to scandir() to test error messages |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : error conditions ***\n"; |
|||
|
|||
$directory = dirname(__FILE__) . '/idonotexist'; |
|||
|
|||
echo "\n-- Pass scandir() an absolute path that does not exist --\n"; |
|||
var_dump(scandir($directory)); |
|||
|
|||
echo "\n-- Pass scandir() a relative path that does not exist --\n"; |
|||
var_dump(scandir('/idonotexist')); |
|||
?> |
|||
===DONE=== |
|||
--EXPECTF-- |
|||
*** Testing scandir() : error conditions *** |
|||
|
|||
-- Pass scandir() an absolute path that does not exist -- |
|||
|
|||
Warning: scandir(%s/idonotexist): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Pass scandir() a relative path that does not exist -- |
|||
|
|||
Warning: scandir(/idonotexist): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : error conditions *** |
|||
|
|||
-- Pass scandir() an absolute path that does not exist -- |
|||
|
|||
Warning: scandir(%s/idonotexist): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Pass scandir() a relative path that does not exist -- |
|||
|
|||
Warning: scandir(/idonotexist): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
===DONE=== |
|||
@ -0,0 +1,423 @@ |
|||
--TEST-- |
|||
Test scandir() function : usage variations - different data types as $dir arg |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Pass different data types as $dir argument to test behaviour of scandir() |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : usage variations ***\n"; |
|||
|
|||
//get an unset variable |
|||
$unset_var = 10; |
|||
unset ($unset_var); |
|||
|
|||
// get a class |
|||
class classA |
|||
{ |
|||
public function __toString() { |
|||
return "Class A object"; |
|||
} |
|||
} |
|||
|
|||
// heredoc string |
|||
$heredoc = <<<EOT |
|||
hello world |
|||
EOT; |
|||
|
|||
// get a resource variable |
|||
$fp = fopen(__FILE__, "r"); |
|||
|
|||
// unexpected values to be passed to $dir argument |
|||
$inputs = array( |
|||
|
|||
// int data |
|||
/*1*/ 0, |
|||
1, |
|||
12345, |
|||
-2345, |
|||
|
|||
// float data |
|||
/*5*/ 10.5, |
|||
-10.5, |
|||
12.3456789000e10, |
|||
12.3456789000E-10, |
|||
.5, |
|||
|
|||
// null data |
|||
/*10*/ NULL, |
|||
null, |
|||
|
|||
// boolean data |
|||
/*12*/ true, |
|||
false, |
|||
TRUE, |
|||
FALSE, |
|||
|
|||
// empty data |
|||
/*16*/ "", |
|||
'', |
|||
array(), |
|||
|
|||
// string data |
|||
/*19*/ "string", |
|||
'string', |
|||
$heredoc, |
|||
|
|||
// object data |
|||
/*22*/ new classA(), |
|||
|
|||
// undefined data |
|||
/*23*/ @$undefined_var, |
|||
|
|||
// unset data |
|||
/*24*/ @$unset_var, |
|||
|
|||
// resource variable |
|||
/*25*/ $fp |
|||
); |
|||
|
|||
// loop through each element of $inputs to check the behavior of scandir() |
|||
$iterator = 1; |
|||
foreach($inputs as $input) { |
|||
echo "\n-- Iteration $iterator --\n"; |
|||
var_dump( scandir($input) ); |
|||
$iterator++; |
|||
}; |
|||
|
|||
fclose($fp); |
|||
?> |
|||
===DONE=== |
|||
--EXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
|
|||
Warning: scandir(0): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 2 -- |
|||
|
|||
Warning: scandir(1): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 3 -- |
|||
|
|||
Warning: scandir(12345): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 4 -- |
|||
|
|||
Warning: scandir(-2345): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 5 -- |
|||
|
|||
Warning: scandir(10.5): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 6 -- |
|||
|
|||
Warning: scandir(-10.5): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 7 -- |
|||
|
|||
Warning: scandir(123456789000): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 8 -- |
|||
|
|||
Warning: scandir(1.23456789E-9): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 9 -- |
|||
|
|||
Warning: scandir(0.5): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 10 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 11 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 12 -- |
|||
|
|||
Warning: scandir(1): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 13 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 14 -- |
|||
|
|||
Warning: scandir(1): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 15 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 16 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 17 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 18 -- |
|||
|
|||
Notice: Array to string conversion in %s on line %d |
|||
|
|||
Warning: scandir(Array): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 19 -- |
|||
|
|||
Warning: scandir(string): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 20 -- |
|||
|
|||
Warning: scandir(string): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 21 -- |
|||
|
|||
Warning: scandir(hello world): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 22 -- |
|||
|
|||
Warning: scandir(Class A object): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 23 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 24 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 25 -- |
|||
|
|||
Warning: scandir(Resource id #%d): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
|
|||
Warning: scandir(0): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 2 -- |
|||
|
|||
Warning: scandir(1): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 3 -- |
|||
|
|||
Warning: scandir(12345): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 4 -- |
|||
|
|||
Warning: scandir(-2345): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 5 -- |
|||
|
|||
Warning: scandir(10.5): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 6 -- |
|||
|
|||
Warning: scandir(-10.5): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 7 -- |
|||
|
|||
Warning: scandir(123456789000): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 8 -- |
|||
|
|||
Warning: scandir(1.23456789E-9): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 9 -- |
|||
|
|||
Warning: scandir(0.5): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 10 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 11 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 12 -- |
|||
|
|||
Warning: scandir(1): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 13 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 14 -- |
|||
|
|||
Warning: scandir(1): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 15 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 16 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 17 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 18 -- |
|||
|
|||
Notice: Array to string conversion in %s on line %d |
|||
|
|||
Warning: scandir(Array): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 19 -- |
|||
|
|||
Warning: scandir(string): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 20 -- |
|||
|
|||
Warning: scandir(string): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 21 -- |
|||
|
|||
Warning: scandir(hello world): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 22 -- |
|||
|
|||
Warning: scandir(Class A object): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 23 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 24 -- |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Iteration 25 -- |
|||
|
|||
Warning: scandir(Resource id #%d): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
===DONE=== |
|||
@ -0,0 +1,462 @@ |
|||
--TEST-- |
|||
Test scandir() function : usage variations - diff data types as $sorting_order arg |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Pass different data types as $sorting_order argument to test how scandir() behaves |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : usage variations ***\n"; |
|||
|
|||
// Initialise function arguments not being substituted |
|||
$dir = dirname(__FILE__) . '/scandir_variation2'; |
|||
mkdir($dir); |
|||
|
|||
//get an unset variable |
|||
$unset_var = 10; |
|||
unset ($unset_var); |
|||
|
|||
// get a class |
|||
class classA |
|||
{ |
|||
public function __toString() { |
|||
return "Class A object"; |
|||
} |
|||
} |
|||
|
|||
// heredoc string |
|||
$heredoc = <<<EOT |
|||
hello world |
|||
EOT; |
|||
|
|||
// get a resource variable |
|||
$fp = fopen(__FILE__, "r"); |
|||
|
|||
// unexpected values to be passed to $sorting_order argument |
|||
$inputs = array( |
|||
|
|||
// int data |
|||
/*1*/ 0, |
|||
1, |
|||
12345, |
|||
-2345, |
|||
|
|||
// float data |
|||
/*5*/ 10.5, |
|||
-10.5, |
|||
12.3456789000e10, |
|||
12.3456789000E-10, |
|||
.5, |
|||
|
|||
// null data |
|||
/*10*/ NULL, |
|||
null, |
|||
|
|||
// boolean data |
|||
/*12*/ true, |
|||
false, |
|||
TRUE, |
|||
FALSE, |
|||
|
|||
// empty data |
|||
/*16*/ "", |
|||
'', |
|||
array(), |
|||
|
|||
// string data |
|||
/*19*/ "string", |
|||
'string', |
|||
$heredoc, |
|||
|
|||
// object data |
|||
/*22*/ new classA(), |
|||
|
|||
// undefined data |
|||
/*23*/ @$undefined_var, |
|||
|
|||
// unset data |
|||
/*24*/ @$unset_var, |
|||
|
|||
// resource variable |
|||
/*25*/ $fp |
|||
); |
|||
|
|||
// loop through each element of $inputs to check the behavior of scandir() |
|||
$iterator = 1; |
|||
foreach($inputs as $input) { |
|||
echo "\n-- Iteration $iterator --\n"; |
|||
var_dump( scandir($dir, $input) ); |
|||
$iterator++; |
|||
}; |
|||
|
|||
fclose($fp); |
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$dir = dirname(__FILE__) . '/scandir_variation2'; |
|||
rmdir($dir); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 2 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(2) ".." |
|||
[1]=> |
|||
string(1) "." |
|||
} |
|||
|
|||
-- Iteration 3 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(2) ".." |
|||
[1]=> |
|||
string(1) "." |
|||
} |
|||
|
|||
-- Iteration 4 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(2) ".." |
|||
[1]=> |
|||
string(1) "." |
|||
} |
|||
|
|||
-- Iteration 5 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(2) ".." |
|||
[1]=> |
|||
string(1) "." |
|||
} |
|||
|
|||
-- Iteration 6 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(2) ".." |
|||
[1]=> |
|||
string(1) "." |
|||
} |
|||
|
|||
-- Iteration 7 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(2) ".." |
|||
[1]=> |
|||
string(1) "." |
|||
} |
|||
|
|||
-- Iteration 8 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 9 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 10 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 11 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 12 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(2) ".." |
|||
[1]=> |
|||
string(1) "." |
|||
} |
|||
|
|||
-- Iteration 13 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 14 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(2) ".." |
|||
[1]=> |
|||
string(1) "." |
|||
} |
|||
|
|||
-- Iteration 15 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 16 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 17 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 18 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, array given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 19 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 20 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 21 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 22 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, object given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 23 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 24 -- |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 25 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, resource given in %s on line %d |
|||
NULL |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 2 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(2) ".." |
|||
[1]=> |
|||
unicode(1) "." |
|||
} |
|||
|
|||
-- Iteration 3 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(2) ".." |
|||
[1]=> |
|||
unicode(1) "." |
|||
} |
|||
|
|||
-- Iteration 4 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(2) ".." |
|||
[1]=> |
|||
unicode(1) "." |
|||
} |
|||
|
|||
-- Iteration 5 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(2) ".." |
|||
[1]=> |
|||
unicode(1) "." |
|||
} |
|||
|
|||
-- Iteration 6 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(2) ".." |
|||
[1]=> |
|||
unicode(1) "." |
|||
} |
|||
|
|||
-- Iteration 7 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(2) ".." |
|||
[1]=> |
|||
unicode(1) "." |
|||
} |
|||
|
|||
-- Iteration 8 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 9 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 10 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 11 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 12 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(2) ".." |
|||
[1]=> |
|||
unicode(1) "." |
|||
} |
|||
|
|||
-- Iteration 13 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 14 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(2) ".." |
|||
[1]=> |
|||
unicode(1) "." |
|||
} |
|||
|
|||
-- Iteration 15 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 16 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 17 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 18 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, array given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 19 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 20 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 21 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 22 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, object given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 23 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 24 -- |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 25 -- |
|||
|
|||
Warning: scandir() expects parameter 2 to be long, resource given in %s on line %d |
|||
NULL |
|||
===DONE=== |
|||
@ -0,0 +1,371 @@ |
|||
--TEST-- |
|||
Test scandir() function : usage variations - diff data types as $context arg |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Pass different data types as $context argument to test how scandir() behaves |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : usage variations ***\n"; |
|||
|
|||
// Initialise function arguments not being substituted |
|||
$dir = dirname(__FILE__) . '/scandir_variation3'; |
|||
mkdir($dir); |
|||
$sorting_order = 0; |
|||
|
|||
//get an unset variable |
|||
$unset_var = 10; |
|||
unset ($unset_var); |
|||
|
|||
// get a class |
|||
class classA |
|||
{ |
|||
public function __toString() { |
|||
return "Class A object"; |
|||
} |
|||
} |
|||
|
|||
// heredoc string |
|||
$heredoc = <<<EOT |
|||
hello world |
|||
EOT; |
|||
|
|||
// get a resource variable |
|||
$fp = fopen(__FILE__, "r"); |
|||
|
|||
// unexpected values to be passed to $context argument |
|||
$inputs = array( |
|||
|
|||
// int data |
|||
/*1*/ 0, |
|||
1, |
|||
12345, |
|||
-2345, |
|||
|
|||
// float data |
|||
/*5*/ 10.5, |
|||
-10.5, |
|||
12.3456789000e10, |
|||
12.3456789000E-10, |
|||
.5, |
|||
|
|||
// null data |
|||
/*10*/ NULL, |
|||
null, |
|||
|
|||
// boolean data |
|||
/*12*/ true, |
|||
false, |
|||
TRUE, |
|||
FALSE, |
|||
|
|||
// empty data |
|||
/*16*/ "", |
|||
'', |
|||
array(), |
|||
|
|||
// string data |
|||
/*19*/ "string", |
|||
'string', |
|||
$heredoc, |
|||
|
|||
// object data |
|||
/*22*/ new classA(), |
|||
|
|||
// undefined data |
|||
/*23*/ @$undefined_var, |
|||
|
|||
// unset data |
|||
/*24*/ @$unset_var, |
|||
|
|||
// resource variable |
|||
/*25*/ $fp |
|||
); |
|||
|
|||
// loop through each element of $inputs to check the behavior of scandir() |
|||
$iterator = 1; |
|||
foreach($inputs as $input) { |
|||
echo "\n-- Iteration $iterator --\n"; |
|||
var_dump( scandir($dir, $sorting_order, $input) ); |
|||
$iterator++; |
|||
}; |
|||
|
|||
fclose($fp); |
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$dir = dirname(__FILE__) . '/scandir_variation3'; |
|||
rmdir($dir); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, integer given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 2 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, integer given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 3 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, integer given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 4 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, integer given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 5 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 6 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 7 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 8 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 9 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 10 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, null given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 11 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, null given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 12 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, boolean given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 13 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, boolean given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 14 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, boolean given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 15 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, boolean given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 16 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 17 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 18 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, array given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 19 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 20 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 21 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 22 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, object given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 23 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, null given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 24 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, null given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 25 -- |
|||
|
|||
Warning: scandir(): supplied resource is not a valid Stream-Context resource in %s on line %d |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, integer given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 2 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, integer given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 3 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, integer given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 4 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, integer given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 5 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 6 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 7 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 8 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 9 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, double given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 10 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, null given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 11 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, null given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 12 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, boolean given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 13 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, boolean given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 14 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, boolean given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 15 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, boolean given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 16 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 17 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 18 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, array given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 19 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 20 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 21 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, Unicode string given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 22 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, object given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 23 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, null given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 24 -- |
|||
|
|||
Warning: scandir() expects parameter 3 to be resource, null given in %s on line %d |
|||
NULL |
|||
|
|||
-- Iteration 25 -- |
|||
|
|||
Warning: scandir(): supplied resource is not a valid Stream-Context resource in %s on line %d |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
===DONE=== |
|||
@ -0,0 +1,271 @@ |
|||
--TEST-- |
|||
Test scandir() function : usage variations - different relative paths |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Test scandir() with relative paths as $dir argument |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : usage variations ***\n"; |
|||
|
|||
// include for create_files/delete_files functions |
|||
include (dirname(__FILE__) . '/../file/file.inc'); |
|||
|
|||
$base_dir_path = dirname(__FILE__); |
|||
|
|||
$level_one_dir_path = "$base_dir_path/level_one"; |
|||
$level_two_dir_path = "$level_one_dir_path/level_two"; |
|||
|
|||
// create directories and files |
|||
mkdir($level_one_dir_path); |
|||
@create_files($level_one_dir_path, 2, 'numeric', 0755, 1, 'w', 'level_one', 1); |
|||
mkdir($level_two_dir_path); |
|||
@create_files($level_two_dir_path, 2, 'numeric', 0755, 1, 'w', 'level_two', 1); |
|||
|
|||
echo "\n-- \$path = './level_one': --\n"; |
|||
var_dump(chdir($base_dir_path)); |
|||
var_dump(scandir('./level_one')); |
|||
|
|||
echo "\n-- \$path = 'level_one/level_two': --\n"; |
|||
var_dump(chdir($base_dir_path)); |
|||
var_dump(scandir('level_one/level_two')); |
|||
|
|||
echo "\n-- \$path = '..': --\n"; |
|||
var_dump(chdir($level_two_dir_path)); |
|||
var_dump(scandir('..')); |
|||
|
|||
echo "\n-- \$path = 'level_two', '.': --\n"; |
|||
var_dump(chdir($level_two_dir_path)); |
|||
var_dump(scandir('.')); |
|||
|
|||
echo "\n-- \$path = '../': --\n"; |
|||
var_dump(chdir($level_two_dir_path)); |
|||
var_dump(scandir('../')); |
|||
|
|||
echo "\n-- \$path = './': --\n"; |
|||
var_dump(chdir($level_two_dir_path)); |
|||
var_dump(scandir('./')); |
|||
|
|||
echo "\n-- \$path = '../../'level_one': --\n"; |
|||
var_dump(chdir($level_two_dir_path)); |
|||
var_dump(scandir('../../level_one')); |
|||
|
|||
@delete_files($level_one_dir_path, 2, 'level_one'); |
|||
@delete_files($level_two_dir_path, 2, 'level_two'); |
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$dir_path = dirname(__FILE__); |
|||
rmdir("$dir_path/level_one/level_two"); |
|||
rmdir("$dir_path/level_one"); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- $path = './level_one': -- |
|||
bool(true) |
|||
array(5) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
[2]=> |
|||
string(14) "level_one1.tmp" |
|||
[3]=> |
|||
string(14) "level_one2.tmp" |
|||
[4]=> |
|||
string(9) "level_two" |
|||
} |
|||
|
|||
-- $path = 'level_one/level_two': -- |
|||
bool(true) |
|||
array(4) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
[2]=> |
|||
string(14) "level_two1.tmp" |
|||
[3]=> |
|||
string(14) "level_two2.tmp" |
|||
} |
|||
|
|||
-- $path = '..': -- |
|||
bool(true) |
|||
array(5) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
[2]=> |
|||
string(14) "level_one1.tmp" |
|||
[3]=> |
|||
string(14) "level_one2.tmp" |
|||
[4]=> |
|||
string(9) "level_two" |
|||
} |
|||
|
|||
-- $path = 'level_two', '.': -- |
|||
bool(true) |
|||
array(4) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
[2]=> |
|||
string(14) "level_two1.tmp" |
|||
[3]=> |
|||
string(14) "level_two2.tmp" |
|||
} |
|||
|
|||
-- $path = '../': -- |
|||
bool(true) |
|||
array(5) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
[2]=> |
|||
string(14) "level_one1.tmp" |
|||
[3]=> |
|||
string(14) "level_one2.tmp" |
|||
[4]=> |
|||
string(9) "level_two" |
|||
} |
|||
|
|||
-- $path = './': -- |
|||
bool(true) |
|||
array(4) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
[2]=> |
|||
string(14) "level_two1.tmp" |
|||
[3]=> |
|||
string(14) "level_two2.tmp" |
|||
} |
|||
|
|||
-- $path = '../../'level_one': -- |
|||
bool(true) |
|||
array(5) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
[2]=> |
|||
string(14) "level_one1.tmp" |
|||
[3]=> |
|||
string(14) "level_one2.tmp" |
|||
[4]=> |
|||
string(9) "level_two" |
|||
} |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- $path = './level_one': -- |
|||
bool(true) |
|||
array(5) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
[2]=> |
|||
unicode(14) "level_one1.tmp" |
|||
[3]=> |
|||
unicode(14) "level_one2.tmp" |
|||
[4]=> |
|||
unicode(9) "level_two" |
|||
} |
|||
|
|||
-- $path = 'level_one/level_two': -- |
|||
bool(true) |
|||
array(4) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
[2]=> |
|||
unicode(14) "level_two1.tmp" |
|||
[3]=> |
|||
unicode(14) "level_two2.tmp" |
|||
} |
|||
|
|||
-- $path = '..': -- |
|||
bool(true) |
|||
array(5) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
[2]=> |
|||
unicode(14) "level_one1.tmp" |
|||
[3]=> |
|||
unicode(14) "level_one2.tmp" |
|||
[4]=> |
|||
unicode(9) "level_two" |
|||
} |
|||
|
|||
-- $path = 'level_two', '.': -- |
|||
bool(true) |
|||
array(4) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
[2]=> |
|||
unicode(14) "level_two1.tmp" |
|||
[3]=> |
|||
unicode(14) "level_two2.tmp" |
|||
} |
|||
|
|||
-- $path = '../': -- |
|||
bool(true) |
|||
array(5) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
[2]=> |
|||
unicode(14) "level_one1.tmp" |
|||
[3]=> |
|||
unicode(14) "level_one2.tmp" |
|||
[4]=> |
|||
unicode(9) "level_two" |
|||
} |
|||
|
|||
-- $path = './': -- |
|||
bool(true) |
|||
array(4) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
[2]=> |
|||
unicode(14) "level_two1.tmp" |
|||
[3]=> |
|||
unicode(14) "level_two2.tmp" |
|||
} |
|||
|
|||
-- $path = '../../'level_one': -- |
|||
bool(true) |
|||
array(5) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
[2]=> |
|||
unicode(14) "level_one1.tmp" |
|||
[3]=> |
|||
unicode(14) "level_one2.tmp" |
|||
[4]=> |
|||
unicode(9) "level_two" |
|||
} |
|||
===DONE=== |
|||
@ -0,0 +1,115 @@ |
|||
--TEST-- |
|||
Test scandir() function : usage variations - different directory permissions |
|||
--SKIPIF-- |
|||
<?php |
|||
if( substr(PHP_OS, 0, 3) == 'WIN') { |
|||
die('skip Not for Windows'); |
|||
} |
|||
// Skip if being run by root (files are always readable, writeable and executable) |
|||
$filename = dirname(__FILE__)."/dir_root_check.tmp"; |
|||
$fp = fopen($filename, 'w'); |
|||
fclose($fp); |
|||
if(fileowner($filename) == 0) { |
|||
unlink ($filename); |
|||
die('skip...cannot be run as root\n'); |
|||
} |
|||
unlink($filename); |
|||
?> |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* remove the execute permission from the parent dir and test scandir() on child dir |
|||
* 1. remove write & execute permission from the 1st parent and test scandir() |
|||
* 2. remove execute permission from 2nd parent and test scandir() |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : usage variations ***\n"; |
|||
|
|||
/* |
|||
* create the temporary directory : |
|||
* scandir_variation5 ( parent ) |
|||
* |-> sub_dir ( sub parent ) |
|||
* |-> child_dir ( child dir) |
|||
*/ |
|||
|
|||
$parent_dir_path = dirname(__FILE__) . "/scandir_variation5"; |
|||
mkdir($parent_dir_path); |
|||
chmod($parent_dir_path, 0777); |
|||
|
|||
// create sub_dir |
|||
$sub_dir_path = $parent_dir_path . "/sub_dir"; |
|||
mkdir($sub_dir_path); |
|||
chmod($sub_dir_path, 0777); |
|||
|
|||
//create sub_sub_dir |
|||
$child_dir_path = $sub_dir_path."/child_dir"; |
|||
mkdir($child_dir_path); |
|||
|
|||
// remove the write and execute permisson from sub parent |
|||
chmod($sub_dir_path, 0444); |
|||
|
|||
echo "\n-- After restricting 1st level parent directory --\n"; |
|||
var_dump(scandir($child_dir_path)); |
|||
|
|||
// remove the execute permisson from parent dir, allowing all permission for sub dir |
|||
chmod($sub_dir_path, 0777); // all permisson to sub dir |
|||
chmod($parent_dir_path, 0666); // restricting parent directory |
|||
|
|||
echo "\n-- After restricting parent directory --\n"; |
|||
var_dump(scandir($child_dir_path)); |
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$parent_dir_path = dirname(__FILE__) . "/scandir_variation5"; |
|||
$sub_dir_path = $parent_dir_path."/sub_dir"; |
|||
$child_dir_path = $sub_dir_path."/child_dir"; |
|||
|
|||
// changing permissions for each temporary directory to delete them |
|||
chmod($parent_dir_path, 0777); |
|||
chmod($sub_dir_path, 0777); |
|||
chmod($child_dir_path, 0777); |
|||
|
|||
rmdir($child_dir_path); |
|||
rmdir($sub_dir_path); |
|||
rmdir($parent_dir_path); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- After restricting 1st level parent directory -- |
|||
|
|||
Warning: scandir(%s/scandir_variation5/sub_dir/child_dir): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- After restricting parent directory -- |
|||
|
|||
Warning: scandir(%s/scandir_variation5/sub_dir/child_dir): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- After restricting 1st level parent directory -- |
|||
|
|||
Warning: scandir(%s/scandir_variation5/sub_dir/child_dir): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- After restricting parent directory -- |
|||
|
|||
Warning: scandir(%s/scandir_variation5/sub_dir/child_dir): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
===DONE=== |
|||
@ -0,0 +1,97 @@ |
|||
--TEST-- |
|||
Test scandir() function : usage variations - Wildcards in directory path |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Pass a directory path using wildcards as $dir argument to test how scandir() behaves |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : usage variations ***\n"; |
|||
|
|||
// create the temporary directories |
|||
$file_path = dirname(__FILE__); |
|||
$dir_path = $file_path . "/scandir_variation6"; |
|||
$sub_dir_path = $dir_path . "/sub_dir1"; |
|||
|
|||
mkdir($dir_path); |
|||
mkdir($sub_dir_path); |
|||
|
|||
// with different wildcard characters |
|||
|
|||
echo "\n-- Wildcard = '*' --\n"; |
|||
var_dump( scandir($file_path . "/scandir_var*") ); |
|||
var_dump( scandir($file_path . "/*") ); |
|||
|
|||
echo "\n-- Wildcard = '?' --\n"; |
|||
var_dump( scandir($dir_path . "/sub_dir?") ); |
|||
var_dump( scandir($dir_path . "/sub?dir1") ); |
|||
|
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$dir_path = dirname(__FILE__) . "/scandir_variation6"; |
|||
$sub_dir_path = $dir_path . "/sub_dir1"; |
|||
|
|||
rmdir($sub_dir_path); |
|||
rmdir($dir_path); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Wildcard = '*' -- |
|||
|
|||
Warning: scandir(%s/scandir_var*): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
Warning: scandir(%s/*): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Wildcard = '?' -- |
|||
|
|||
Warning: scandir(%s/scandir_variation6/sub_dir?): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
Warning: scandir(%s/scandir_variation6/sub?dir1): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Wildcard = '*' -- |
|||
|
|||
Warning: scandir(%s/scandir_var*): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
Warning: scandir(%s/*): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
-- Wildcard = '?' -- |
|||
|
|||
Warning: scandir(%s/scandir_variation6/sub_dir?): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
|
|||
Warning: scandir(%s/scandir_variation6/sub?dir1): failed to open dir: %s in %s on line %d |
|||
|
|||
Warning: scandir(): (errno %d): %s in %s on line %d |
|||
bool(false) |
|||
===DONE=== |
|||
@ -0,0 +1,262 @@ |
|||
--TEST-- |
|||
Test scandir() function : usage variations - different directory permissions |
|||
--SKIPIF-- |
|||
<?php |
|||
if( substr(PHP_OS, 0, 3) == 'WIN') { |
|||
die('skip Not for Windows'); |
|||
} |
|||
// Skip if being run by root (files are always readable, writeable and executable) |
|||
$filename = dirname(__FILE__) . "/dir_root_check.tmp"; |
|||
$fp = fopen($filename, 'w'); |
|||
fclose($fp); |
|||
if(fileowner($filename) == 0) { |
|||
unlink ($filename); |
|||
die('skip...cannot be run as root\n'); |
|||
} |
|||
unlink($filename); |
|||
?> |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Create directories with different permissions to test whether scandir() can access them |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : usage variations ***\n"; |
|||
|
|||
// create the temporary directory |
|||
$dir_path = dirname(__FILE__) . "/scandir_variation7"; |
|||
mkdir($dir_path); |
|||
|
|||
// different values for directory permissions |
|||
$permission_values = array( |
|||
/*1*/ 0477, // owner has read only, other and group has rwx |
|||
0677, // owner has rw only, other and group has rwx |
|||
|
|||
/*3*/ 0444, // all have read only |
|||
0666, // all have rw only |
|||
|
|||
/*5*/ 0400, // owner has read only, group and others have no permission |
|||
0600, // owner has rw only, group and others have no permission |
|||
|
|||
/*7*/ 0470, // owner has read only, group has rwx & others have no permission |
|||
0407, // owner has read only, other has rwx & group has no permission |
|||
|
|||
/*9*/ 0670, // owner has rw only, group has rwx & others have no permission |
|||
/*10*/ 0607 // owner has rw only, group has no permission and others have rwx |
|||
); |
|||
|
|||
$iterator = 1; |
|||
foreach ($permission_values as $perm) { |
|||
echo "\n-- Iteration $iterator --\n"; |
|||
|
|||
// Remove the directory if already exists |
|||
if (is_dir($dir_path)){ |
|||
chmod ($dir_path, 0777); // change dir permission to allow all operation |
|||
rmdir ($dir_path); |
|||
} |
|||
mkdir($dir_path); |
|||
|
|||
// change the dir permisson to test dir on it |
|||
var_dump( chmod($dir_path, $perm) ); |
|||
|
|||
var_dump(scandir($dir_path)); |
|||
$iterator++; |
|||
} |
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$dir_path = dirname(__FILE__) . "/scandir_variation7"; |
|||
rmdir($dir_path); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 2 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 3 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 4 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 5 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 6 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 7 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 8 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 9 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
|
|||
-- Iteration 10 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
} |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 2 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 3 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 4 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 5 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 6 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 7 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 8 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 9 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
|
|||
-- Iteration 10 -- |
|||
bool(true) |
|||
array(2) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
} |
|||
===DONE=== |
|||
@ -0,0 +1,239 @@ |
|||
--TEST-- |
|||
Test scandir() function : usage variations - different file names |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Pass a directory containing files with different types of names to test how scandir() |
|||
* reads them |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : usage variations ***\n"; |
|||
|
|||
$dir_path = dirname(__FILE__) . "/scandir_variation8/"; |
|||
mkdir($dir_path); |
|||
|
|||
// heredoc string |
|||
$heredoc = <<<EOT |
|||
hd_file |
|||
EOT; |
|||
|
|||
$inputs = array( |
|||
|
|||
// int data |
|||
/*1*/ 0, |
|||
1, |
|||
12345, |
|||
-2345, |
|||
|
|||
// float data |
|||
/*5*/ 10.5, |
|||
-10.5, |
|||
12.3456789000e10, |
|||
12.3456789000E-10, |
|||
.5, |
|||
|
|||
// empty data |
|||
/*10*/ "", |
|||
array(), |
|||
|
|||
// string data |
|||
/*12*/ "double_file", |
|||
'single_file', |
|||
$heredoc, |
|||
); |
|||
|
|||
$iterator = 1; |
|||
foreach($inputs as $key => $input) { |
|||
echo "\n-- Iteration $iterator --\n"; |
|||
$handle = "fp{$iterator}"; |
|||
var_dump( $$handle = fopen($dir_path . $input . '.tmp', 'w') ); |
|||
fclose($$handle); |
|||
$iterator++; |
|||
}; |
|||
|
|||
echo "\n-- Call to scandir() --\n"; |
|||
var_dump($content = scandir($dir_path)); |
|||
|
|||
// remove all files in directory so can remove directory in CLEAN section |
|||
foreach ($content as $file_name) { |
|||
// suppress errors as won't be able to remove "." and ".." entries |
|||
@unlink($dir_path . $file_name); |
|||
} |
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$dir_path = dirname(__FILE__) . "/scandir_variation8"; |
|||
rmdir($dir_path); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 2 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 3 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 4 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 5 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 6 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 7 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 8 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 9 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 10 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 11 -- |
|||
|
|||
Notice: Array to string conversion in %s on line %d |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 12 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 13 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 14 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Call to scandir() -- |
|||
array(16) { |
|||
[0]=> |
|||
string(9) "-10.5.tmp" |
|||
[1]=> |
|||
string(9) "-2345.tmp" |
|||
[2]=> |
|||
string(1) "." |
|||
[3]=> |
|||
string(2) ".." |
|||
[4]=> |
|||
string(4) ".tmp" |
|||
[5]=> |
|||
string(7) "0.5.tmp" |
|||
[6]=> |
|||
string(5) "0.tmp" |
|||
[7]=> |
|||
string(17) "1.23456789E-9.tmp" |
|||
[8]=> |
|||
string(5) "1.tmp" |
|||
[9]=> |
|||
string(8) "10.5.tmp" |
|||
[10]=> |
|||
string(9) "12345.tmp" |
|||
[11]=> |
|||
string(16) "123456789000.tmp" |
|||
[12]=> |
|||
string(9) "Array.tmp" |
|||
[13]=> |
|||
string(15) "double_file.tmp" |
|||
[14]=> |
|||
string(11) "hd_file.tmp" |
|||
[15]=> |
|||
string(15) "single_file.tmp" |
|||
} |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
|
|||
-- Iteration 1 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 2 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 3 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 4 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 5 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 6 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 7 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 8 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 9 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 10 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 11 -- |
|||
|
|||
Notice: Array to string conversion in %s on line %d |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 12 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 13 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Iteration 14 -- |
|||
resource(%d) of type (stream) |
|||
|
|||
-- Call to scandir() -- |
|||
array(16) { |
|||
[0]=> |
|||
unicode(9) "-10.5.tmp" |
|||
[1]=> |
|||
unicode(9) "-2345.tmp" |
|||
[2]=> |
|||
unicode(1) "." |
|||
[3]=> |
|||
unicode(2) ".." |
|||
[4]=> |
|||
unicode(4) ".tmp" |
|||
[5]=> |
|||
unicode(7) "0.5.tmp" |
|||
[6]=> |
|||
unicode(5) "0.tmp" |
|||
[7]=> |
|||
unicode(17) "1.23456789E-9.tmp" |
|||
[8]=> |
|||
unicode(5) "1.tmp" |
|||
[9]=> |
|||
unicode(8) "10.5.tmp" |
|||
[10]=> |
|||
unicode(9) "12345.tmp" |
|||
[11]=> |
|||
unicode(16) "123456789000.tmp" |
|||
[12]=> |
|||
unicode(9) "Array.tmp" |
|||
[13]=> |
|||
unicode(15) "double_file.tmp" |
|||
[14]=> |
|||
unicode(11) "hd_file.tmp" |
|||
[15]=> |
|||
unicode(15) "single_file.tmp" |
|||
} |
|||
===DONE=== |
|||
@ -0,0 +1,105 @@ |
|||
--TEST-- |
|||
Test scandir() function : usage variations - different ints as $sorting_order arg |
|||
--FILE-- |
|||
<?php |
|||
/* Prototype : array scandir(string $dir [, int $sorting_order [, resource $context]]) |
|||
* Description: List files & directories inside the specified path |
|||
* Source code: ext/standard/dir.c |
|||
*/ |
|||
|
|||
/* |
|||
* Pass different integers as $sorting_order argument to test how scandir() |
|||
* re-orders the array |
|||
*/ |
|||
|
|||
echo "*** Testing scandir() : usage variations ***\n"; |
|||
|
|||
// include for create_files/delete_files functions |
|||
include(dirname(__FILE__) . '/../file/file.inc'); |
|||
|
|||
// create directory and files |
|||
$dir = dirname(__FILE__) . '/scandir_variation9'; |
|||
mkdir($dir); |
|||
@create_files($dir, 2); |
|||
|
|||
// different ints to pass as $sorting_order argument |
|||
$ints = array (PHP_INT_MAX, -PHP_INT_MAX, 0); |
|||
|
|||
foreach($ints as $sorting_order) { |
|||
var_dump( scandir($dir, $sorting_order) ); |
|||
} |
|||
|
|||
delete_files($dir, 2); |
|||
?> |
|||
===DONE=== |
|||
--CLEAN-- |
|||
<?php |
|||
$dir = dirname(__FILE__) . '/scandir_variation9'; |
|||
rmdir($dir); |
|||
?> |
|||
--EXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
array(4) { |
|||
[0]=> |
|||
string(9) "file2.tmp" |
|||
[1]=> |
|||
string(9) "file1.tmp" |
|||
[2]=> |
|||
string(2) ".." |
|||
[3]=> |
|||
string(1) "." |
|||
} |
|||
array(4) { |
|||
[0]=> |
|||
string(9) "file2.tmp" |
|||
[1]=> |
|||
string(9) "file1.tmp" |
|||
[2]=> |
|||
string(2) ".." |
|||
[3]=> |
|||
string(1) "." |
|||
} |
|||
array(4) { |
|||
[0]=> |
|||
string(1) "." |
|||
[1]=> |
|||
string(2) ".." |
|||
[2]=> |
|||
string(9) "file1.tmp" |
|||
[3]=> |
|||
string(9) "file2.tmp" |
|||
} |
|||
===DONE=== |
|||
--UEXPECTF-- |
|||
*** Testing scandir() : usage variations *** |
|||
array(4) { |
|||
[0]=> |
|||
unicode(9) "file2.tmp" |
|||
[1]=> |
|||
unicode(9) "file1.tmp" |
|||
[2]=> |
|||
unicode(2) ".." |
|||
[3]=> |
|||
unicode(1) "." |
|||
} |
|||
array(4) { |
|||
[0]=> |
|||
unicode(9) "file2.tmp" |
|||
[1]=> |
|||
unicode(9) "file1.tmp" |
|||
[2]=> |
|||
unicode(2) ".." |
|||
[3]=> |
|||
unicode(1) "." |
|||
} |
|||
array(4) { |
|||
[0]=> |
|||
unicode(1) "." |
|||
[1]=> |
|||
unicode(2) ".." |
|||
[2]=> |
|||
unicode(9) "file1.tmp" |
|||
[3]=> |
|||
unicode(9) "file2.tmp" |
|||
} |
|||
===DONE=== |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue