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 92 93 94 95 96
|
--TEST--
Test rename() function: usage variations-6
--SKIPIF--
<?php
if (substr(PHP_OS, 0, 3) == 'WIN') {
die('skip.. only for Linux');
}
?>
--FILE--
<?php
/* test rename() by trying to rename an existing file/dir/link to the same name
and one another */
// create a dir
$file_path = dirname(__FILE__);
$dirname = "$file_path/rename_variation5_dir";
mkdir($dirname);
//create a file
$filename = "$file_path/rename_variation5.tmp";
$fp = fopen($filename, "w");
fclose($fp);
// create a link
$linkname = "$file_path/rename_variation5_link.tmp";
symlink($filename, $linkname);
echo "\n-- Renaming link to same link name --\n";
var_dump( rename($linkname, $linkname) );
echo "\n-- Renaming file to same file name --\n";
var_dump( rename($filename, $filename) );
echo "\n-- Renaming directory to same directory name --\n";
var_dump( rename($dirname, $dirname) );
echo "\n-- Renaming existing link to existing directory name --\n";
var_dump( rename($linkname, $dirname) );
echo "\n-- Renaming existing link to existing file name --\n";
var_dump( rename($linkname, $filename) );
echo "\n-- Renaming existing file to existing directory name --\n";
var_dump( rename($filename, $dirname) );
echo "\n-- Renaming existing file to existing link name --\n";
var_dump( rename($filename, $linkname) );
echo "\n-- Renaming existing directory to existing file name --\n";
$fp = fopen($filename, "w");
fclose($fp);
var_dump( rename($dirname, $filename) );
echo "\n-- Renaming existing directory to existing link name --\n";
var_dump( rename($dirname, $linkname) );
echo "Done\n";
?>
--CLEAN--
<?php
$file_path = dirname(__FILE__);
unlink($file_path."/rename_variation5_link.tmp");
unlink($file_path."/rename_variation5.tmp");
rmdir($file_path."/rename_variation5_dir");
?>
--EXPECTF--
-- Renaming link to same link name --
bool(true)
-- Renaming file to same file name --
bool(true)
-- Renaming directory to same directory name --
bool(true)
-- Renaming existing link to existing directory name --
Warning: rename(%s,%s): Is a directory in %s on line %d
bool(false)
-- Renaming existing link to existing file name --
bool(true)
-- Renaming existing file to existing directory name --
Warning: rename(%s,%s): Is a directory in %s on line %d
bool(false)
-- Renaming existing file to existing link name --
bool(true)
-- Renaming existing directory to existing file name --
Warning: rename(%s,%s): Not a directory in %s on line %d
bool(false)
-- Renaming existing directory to existing link name --
Warning: rename(%s,%s): Not a directory in %s on line %d
bool(false)
Done
|