1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
--TEST--
Test fileatime(), filemtime(), filectime() & touch() functions : usage variation
--CREDITS--
Dave Kelsey <d_kelsey@uk.ibm.com>
--SKIPIF--
<?php
if (substr(PHP_OS, 0, 3) != 'WIN') {
die('skip.. only for Windows');
}
?>
--FILE--
<?php
function stat_fn( $filename ) {
echo "\n-- File '$filename' --\n";
echo "-- File access time is => ";
echo fileatime($filename)."\n";
clearstatcache();
echo "-- File modification time is => ";
echo filemtime($filename)."\n";
clearstatcache();
echo "-- inode change time is => ";
echo filectime($filename)."\n";
clearstatcache();
}
echo "*** Testing fileattime(), filemtime(), filectime() & touch() : usage variations ***\n";
echo "\n*** testing file info ***";
stat_fn(false);
stat_fn('');
stat_fn(' ');
stat_fn('|');
echo "\n*** testing touch ***\n";
var_dump(touch(false));
var_dump(touch(''));
//php generates permission denied, we generate No such file or dir.
var_dump(touch(' '));
var_dump(touch('|'));
echo "Done";
?>
--EXPECTF--
*** Testing fileattime(), filemtime(), filectime() & touch() : usage variations ***
*** testing file info ***
-- File '' --
-- File access time is =>
-- File modification time is =>
-- inode change time is =>
-- File '' --
-- File access time is =>
-- File modification time is =>
-- inode change time is =>
-- File ' ' --
-- File access time is =>
Warning: fileatime(): stat failed for in %s on line %d
-- File modification time is =>
Warning: filemtime(): stat failed for in %s on line %d
-- inode change time is =>
Warning: filectime(): stat failed for in %s on line %d
-- File '|' --
-- File access time is =>
Warning: fileatime(): stat failed for | in %s on line %d
-- File modification time is =>
Warning: filemtime(): stat failed for | in %s on line %d
-- inode change time is =>
Warning: filectime(): stat failed for | in %s on line %d
*** testing touch ***
bool(false)
bool(false)
Warning: touch(): %s in %s on line %d
bool(false)
Warning: touch(): %s in %s on line %d
bool(false)
Done
|