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