1--TEST-- 2Test stat() functions: usage variations - effects of creating/deleting the dir/file 3--SKIPIF-- 4<?php 5if (substr(PHP_OS, 0, 3) != 'WIN') { 6 die('skip.. only for Windows'); 7} 8?> 9--FILE-- 10<?php 11 12/* 13 * Prototype: array stat ( string $filename ); 14 * Description: Gives information about a file 15 */ 16 17/* test the effects of creating & deleting of subdir/file on the stats of dir/file */ 18 19$file_path = dirname(__FILE__); 20require "$file_path/file.inc"; 21 22 23/* create temp file and directory */ 24mkdir("$file_path/stat_variation3/"); // temp dir 25 26echo "*** Testing stat(): with creating & deleting subdir/file ***\n"; 27 28// creating and deleting subdir and files in the dir 29echo "-- Testing stat() on dir after subdir and file is created in it --\n"; 30$dirname = "$file_path/stat_variation3"; 31$old_stat = stat($dirname); 32clearstatcache(); 33sleep(2); 34mkdir("$dirname/stat_variation3_subdir"); 35$file_handle = fopen("$dirname/stat_variation3a.tmp", "w"); 36fclose($file_handle); 37$new_stat = stat($dirname); 38 39// compare self stats 40var_dump( compare_self_stat($old_stat) ); 41var_dump( compare_self_stat($new_stat) ); 42// compare the stats 43$affected_members = array( 9, 'mtime'); 44clearstatcache(); 45sleep(2); 46var_dump(compare_stats($old_stat, $new_stat, $affected_members, "<")); 47unlink("$dirname/stat_variation3a.tmp"); 48rmdir("$dirname/stat_variation3_subdir"); 49clearstatcache(); 50 51// comparing stats after the deletion of subdir and file 52echo "-- Testing stat() for comparing stats after the deletion of subdir and file --\n"; 53$new_stat1 = stat($dirname); 54// compare self stats 55var_dump( compare_self_stat($new_stat1) ); 56// compare the stats 57var_dump(compare_stats($new_stat, $new_stat1, $all_stat_keys, "=")); 58clearstatcache(); 59 60echo "\n*** Done ***"; 61?> 62 63--CLEAN-- 64<?php 65$file_path = dirname(__FILE__); 66rmdir("$file_path/stat_variation3"); 67?> 68--EXPECTF-- 69 70*** Testing stat(): with creating & deleting subdir/file *** 71-- Testing stat() on dir after subdir and file is created in it -- 72bool(true) 73bool(true) 74bool(true) 75-- Testing stat() for comparing stats after the deletion of subdir and file -- 76bool(true) 77bool(true) 78 79*** Done *** 80 81