scandir_variation4-win32-mb.phpt 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. --TEST--
  2. Test scandir() function : usage variations - different relative paths
  3. --SKIPIF--
  4. <?php
  5. if (substr(PHP_OS, 0, 3) != 'WIN') {
  6. die("skip Valid only on Windows");
  7. }
  8. ?>
  9. --FILE--
  10. <?php
  11. /*
  12. * Test scandir() with relative paths as $dir argument
  13. */
  14. echo "*** Testing scandir() : usage variations ***\n";
  15. // include for create_files/delete_files functions
  16. include (__DIR__ . '/../file/file.inc');
  17. $base_dir_path = __DIR__ . '/scandir_variation4-win32-mb';
  18. @mkdir($base_dir_path);
  19. $level_one_dir_path = "$base_dir_path/私はガラスを食べられますlevel_one";
  20. $level_two_dir_path = "$level_one_dir_path/私はガラスを食べられますlevel_two";
  21. // create directories and files
  22. mkdir($level_one_dir_path);
  23. create_files($level_one_dir_path, 2, 'numeric', 0755, 1, 'w', '私はガラスを食べられますlevel_one', 1);
  24. mkdir($level_two_dir_path);
  25. create_files($level_two_dir_path, 2, 'numeric', 0755, 1, 'w', '私はガラスを食べられますlevel_two', 1);
  26. echo "\n-- \$path = './私はガラスを食べられますlevel_one': --\n";
  27. var_dump(chdir($base_dir_path));
  28. var_dump(scandir('./私はガラスを食べられますlevel_one'));
  29. echo "\n-- \$path = 'level_one/私はガラスを食べられますlevel_two': --\n";
  30. var_dump(chdir($base_dir_path));
  31. var_dump(scandir('私はガラスを食べられますlevel_one/私はガラスを食べられますlevel_two'));
  32. echo "\n-- \$path = '..': --\n";
  33. var_dump(chdir($level_two_dir_path));
  34. var_dump(scandir('..'));
  35. echo "\n-- \$path = '私はガラスを食べられますlevel_two', '.': --\n";
  36. var_dump(chdir($level_two_dir_path));
  37. var_dump(scandir('.'));
  38. echo "\n-- \$path = '../': --\n";
  39. var_dump(chdir($level_two_dir_path));
  40. var_dump(scandir('../'));
  41. echo "\n-- \$path = './': --\n";
  42. var_dump(chdir($level_two_dir_path));
  43. var_dump(scandir('./'));
  44. echo "\n-- \$path = '../../'私はガラスを食べられますlevel_one': --\n";
  45. var_dump(chdir($level_two_dir_path));
  46. var_dump(scandir('../../私はガラスを食べられますlevel_one'));
  47. @delete_files($level_one_dir_path, 2, '私はガラスを食べられますlevel_one');
  48. @delete_files($level_two_dir_path, 2, '私はガラスを食べられますlevel_two');
  49. ?>
  50. --CLEAN--
  51. <?php
  52. $base_dir_path = __DIR__ . '/scandir_variation4-win32-mb';
  53. rmdir("$base_dir_path/私はガラスを食べられますlevel_one/私はガラスを食べられますlevel_two");
  54. rmdir("$base_dir_path/私はガラスを食べられますlevel_one");
  55. rmdir($base_dir_path);
  56. ?>
  57. --EXPECT--
  58. *** Testing scandir() : usage variations ***
  59. -- $path = './私はガラスを食べられますlevel_one': --
  60. bool(true)
  61. array(5) {
  62. [0]=>
  63. string(1) "."
  64. [1]=>
  65. string(2) ".."
  66. [2]=>
  67. string(50) "私はガラスを食べられますlevel_one1.tmp"
  68. [3]=>
  69. string(50) "私はガラスを食べられますlevel_one2.tmp"
  70. [4]=>
  71. string(45) "私はガラスを食べられますlevel_two"
  72. }
  73. -- $path = 'level_one/私はガラスを食べられますlevel_two': --
  74. bool(true)
  75. array(4) {
  76. [0]=>
  77. string(1) "."
  78. [1]=>
  79. string(2) ".."
  80. [2]=>
  81. string(50) "私はガラスを食べられますlevel_two1.tmp"
  82. [3]=>
  83. string(50) "私はガラスを食べられますlevel_two2.tmp"
  84. }
  85. -- $path = '..': --
  86. bool(true)
  87. array(5) {
  88. [0]=>
  89. string(1) "."
  90. [1]=>
  91. string(2) ".."
  92. [2]=>
  93. string(50) "私はガラスを食べられますlevel_one1.tmp"
  94. [3]=>
  95. string(50) "私はガラスを食べられますlevel_one2.tmp"
  96. [4]=>
  97. string(45) "私はガラスを食べられますlevel_two"
  98. }
  99. -- $path = '私はガラスを食べられますlevel_two', '.': --
  100. bool(true)
  101. array(4) {
  102. [0]=>
  103. string(1) "."
  104. [1]=>
  105. string(2) ".."
  106. [2]=>
  107. string(50) "私はガラスを食べられますlevel_two1.tmp"
  108. [3]=>
  109. string(50) "私はガラスを食べられますlevel_two2.tmp"
  110. }
  111. -- $path = '../': --
  112. bool(true)
  113. array(5) {
  114. [0]=>
  115. string(1) "."
  116. [1]=>
  117. string(2) ".."
  118. [2]=>
  119. string(50) "私はガラスを食べられますlevel_one1.tmp"
  120. [3]=>
  121. string(50) "私はガラスを食べられますlevel_one2.tmp"
  122. [4]=>
  123. string(45) "私はガラスを食べられますlevel_two"
  124. }
  125. -- $path = './': --
  126. bool(true)
  127. array(4) {
  128. [0]=>
  129. string(1) "."
  130. [1]=>
  131. string(2) ".."
  132. [2]=>
  133. string(50) "私はガラスを食べられますlevel_two1.tmp"
  134. [3]=>
  135. string(50) "私はガラスを食べられますlevel_two2.tmp"
  136. }
  137. -- $path = '../../'私はガラスを食べられますlevel_one': --
  138. bool(true)
  139. array(5) {
  140. [0]=>
  141. string(1) "."
  142. [1]=>
  143. string(2) ".."
  144. [2]=>
  145. string(50) "私はガラスを食べられますlevel_one1.tmp"
  146. [3]=>
  147. string(50) "私はガラスを食べられますlevel_one2.tmp"
  148. [4]=>
  149. string(45) "私はガラスを食べられますlevel_two"
  150. }