123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453 |
- --TEST--
- Test glob() function: usage variations
- --SKIPIF--
- <?php
- if (substr(PHP_OS, 0, 3) == 'WIN') {
- die('skip.. Not valid for Windows');
- }
- if (!defined('GLOB_BRACE')) {
- die('skip this test requires GLOB_BRACE support');
- }
- ?>
- --FILE--
- <?php
- echo "*** Testing glob() : usage variations ***\n";
- $file_path = __DIR__;
- // temp dir created
- mkdir("$file_path/glob_variation");
- mkdir("$file_path/glob_variation/wonder");
- // temp files created
- $fp = fopen("$file_path/glob_variation/wonder12345", "w");
- fclose($fp);
- $fp = fopen("$file_path/glob_variation/wonder;123456", "w");
- fclose($fp);
- $patterns = array (
- "$file_path/glob_variation/*der*",
- "$file_path/glob_variation/?onder*",
- "$file_path/glob_variation/w*der?*",
- "$file_path/glob_variation/*der5",
- "$file_path/glob_variation/??onder*",
- "$file_path/glob_variation/***der***",
- "$file_path/glob_variation/++onder*",
- "$file_path/glob_variation/WONDER5\0",
- '$file_path/glob_variation/wonder5',
- "$file_path/glob_variation/?wonder?",
- "$file_path/glob_variation/wonder?",
- TRUE // boolean true
- );
- $counter = 1;
- /* loop through $patterns to match each $pattern with the files created
- using glob() */
- foreach($patterns as $pattern) {
- echo "\n-- Iteration $counter --\n";
- try {
- var_dump( glob($pattern) ); // default arguments
- var_dump( glob($pattern, GLOB_MARK) );
- var_dump( glob($pattern, GLOB_NOSORT) );
- var_dump( glob($pattern, GLOB_NOCHECK) );
- var_dump( glob($pattern, GLOB_NOESCAPE) );
- var_dump( glob($pattern, GLOB_ERR) );
- } catch (Error $e) {
- echo $e->getMessage(), "\n";
- }
- $counter++;
- }
- echo "\n*** Testing glob() with pattern within braces ***\n";
- var_dump( glob("$file_path/glob_variation/*{5}", GLOB_BRACE) );
- // delete temp files and dir
- unlink("$file_path/glob_variation/wonder12345");
- unlink("$file_path/glob_variation/wonder;123456");
- rmdir("$file_path/glob_variation/wonder");
- rmdir("$file_path/glob_variation");
- echo "\n*** Testing glob() on directories ***\n";
- // temp dir created to check for pattern matching the sub dir created in it
- mkdir("$file_path/glob_variation/wonder1/wonder2", 0777, true);
- $counter = 1;
- /* loop through $patterns to match each $pattern with the directories created
- using glob() */
- foreach($patterns as $pattern) {
- echo "-- Iteration $counter --\n";
- try {
- var_dump( glob($pattern, GLOB_ONLYDIR) );
- } catch (Error $e) {
- echo $e->getMessage(), "\n";
- }
- $counter++;
- }
- echo "Done\n";
- ?>
- --CLEAN--
- <?php
- $file_path = __DIR__;
- rmdir("$file_path/glob_variation/wonder1/wonder2");
- rmdir("$file_path/glob_variation/wonder1/");
- rmdir("$file_path/glob_variation/");
- ?>
- --EXPECTF--
- *** Testing glob() : usage variations ***
- -- Iteration 1 --
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder/"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s"
- [1]=>
- string(%d) "%s"
- [2]=>
- string(%d) "%s"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- -- Iteration 2 --
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder/"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s"
- [1]=>
- string(%d) "%s"
- [2]=>
- string(%d) "%s"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- -- Iteration 3 --
- array(2) {
- [0]=>
- string(%d) "%s/glob_variation/wonder12345"
- [1]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(2) {
- [0]=>
- string(%d) "%s/glob_variation/wonder12345"
- [1]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(2) {
- [0]=>
- string(%d) "%s"
- [1]=>
- string(%d) "%s"
- }
- array(2) {
- [0]=>
- string(%d) "%s/glob_variation/wonder12345"
- [1]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(2) {
- [0]=>
- string(%d) "%s/glob_variation/wonder12345"
- [1]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(2) {
- [0]=>
- string(%d) "%s/glob_variation/wonder12345"
- [1]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- -- Iteration 4 --
- array(0) {
- }
- array(0) {
- }
- array(0) {
- }
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/*der5"
- }
- array(0) {
- }
- array(0) {
- }
- -- Iteration 5 --
- array(0) {
- }
- array(0) {
- }
- array(0) {
- }
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/??onder*"
- }
- array(0) {
- }
- array(0) {
- }
- -- Iteration 6 --
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder/"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s"
- [1]=>
- string(%d) "%s"
- [2]=>
- string(%d) "%s"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- array(3) {
- [0]=>
- string(%d) "%s/glob_variation/wonder"
- [1]=>
- string(%d) "%s/glob_variation/wonder12345"
- [2]=>
- string(%d) "%s/glob_variation/wonder;123456"
- }
- -- Iteration 7 --
- array(0) {
- }
- array(0) {
- }
- array(0) {
- }
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/++onder*"
- }
- array(0) {
- }
- array(0) {
- }
- -- Iteration 8 --
- glob(): Argument #1 ($pattern) must not contain any null bytes
- -- Iteration 9 --
- array(0) {
- }
- array(0) {
- }
- array(0) {
- }
- array(1) {
- [0]=>
- string(%d) "$file_path/glob_variation/wonder5"
- }
- array(0) {
- }
- array(0) {
- }
- -- Iteration 10 --
- array(0) {
- }
- array(0) {
- }
- array(0) {
- }
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/?wonder?"
- }
- array(0) {
- }
- array(0) {
- }
- -- Iteration 11 --
- array(0) {
- }
- array(0) {
- }
- array(0) {
- }
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/wonder?"
- }
- array(0) {
- }
- array(0) {
- }
- -- Iteration 12 --
- array(0) {
- }
- array(0) {
- }
- array(0) {
- }
- array(1) {
- [0]=>
- string(%d) "1"
- }
- array(0) {
- }
- array(0) {
- }
- *** Testing glob() with pattern within braces ***
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/wonder12345"
- }
- *** Testing glob() on directories ***
- -- Iteration 1 --
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/wonder1"
- }
- -- Iteration 2 --
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/wonder1"
- }
- -- Iteration 3 --
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/wonder1"
- }
- -- Iteration 4 --
- array(0) {
- }
- -- Iteration 5 --
- array(0) {
- }
- -- Iteration 6 --
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/wonder1"
- }
- -- Iteration 7 --
- array(0) {
- }
- -- Iteration 8 --
- glob(): Argument #1 ($pattern) must not contain any null bytes
- -- Iteration 9 --
- array(0) {
- }
- -- Iteration 10 --
- array(0) {
- }
- -- Iteration 11 --
- array(1) {
- [0]=>
- string(%d) "%s/glob_variation/wonder1"
- }
- -- Iteration 12 --
- array(0) {
- }
- Done
|