1--TEST-- 2Test lstat() and stat() functions: usage variations - effects changing permissions of link 3--SKIPIF-- 4<?php 5if (getenv("SKIP_SLOW_TESTS")) die("skip slow test"); 6if (substr(PHP_OS, 0, 3) == 'WIN') { 7 die('skip.. lstat() not available on Windows'); 8} 9?> 10--FILE-- 11<?php 12/* Prototype: array lstat ( string $filename ); 13 Description: Gives information about a file or symbolic link 14 15 Prototype: array stat ( string $filename ); 16 Description: Gives information about a file 17*/ 18 19/* test the effects on stats by changing permissions of link */ 20 21$file_path = dirname(__FILE__); 22require "$file_path/file.inc"; 23 24 25$filename = "$file_path/lstat_stat_variation15.tmp"; 26$fp = fopen($filename, "w"); // temp file 27fclose($fp); 28 29// temp link 30$linkname = "$file_path/lstat_stat_variation15_link.tmp"; 31symlink($filename, $linkname); 32 33// checking lstat() and stat() on links 34echo "*** Testing lstat() on a link after changing its access permission ***\n"; 35clearstatcache(); 36$old_stat = lstat($linkname); 37var_dump( chmod($linkname, 0777) ); 38// clear the stat 39clearstatcache(); 40sleep(2); 41$new_stat = lstat($linkname); 42// compare self stats 43var_dump( compare_self_stat($old_stat) ); 44var_dump( compare_self_stat($new_stat) ); 45// compare the stat 46var_dump( compare_stats($old_stat, $new_stat, $all_stat_keys, "=") ); 47 48echo "\n--- Done ---"; 49?> 50--CLEAN-- 51<?php 52$file_path = dirname(__FILE__); 53unlink("$file_path/lstat_stat_variation15_link.tmp"); 54unlink("$file_path/lstat_stat_variation15.tmp"); 55?> 56--EXPECTF-- 57*** Testing lstat() on a link after changing its access permission *** 58bool(true) 59bool(true) 60bool(true) 61bool(true) 62 63--- Done --- 64