Return to fopen_variation19.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / file |
1.1 misho 1: --TEST-- 2: Test fopen() function : variation: test opening linked files 3: --CREDITS-- 4: Dave Kelsey <d_kelsey@uk.ibm.com> 5: --SKIPIF-- 6: <?php 7: if(substr(PHP_OS, 0, 3) == "WIN") 8: die("skip Not for Windows"); 9: ?> 10: --FILE-- 11: <?php 12: /* Prototype : resource fopen(string filename, string mode [, bool use_include_path [, resource context]]) 13: * Description: Open a file or a URL and return a file pointer 14: * Source code: ext/standard/file.c 15: * Alias to functions: 16: */ 17: 18: $tmpDir = 'fopenVar19.Dir'; 19: $realFilename = __FILE__.'.real'; 20: $sortFilename = __FILE__.'.soft'; 21: $hardFilename = __FILE__.'.hard'; 22: $linkOfLink = __FILE__.'.soft2'; 23: 24: echo "*** Testing fopen() : variation ***\n"; 25: // start the test 26: mkdir($tmpDir); 27: chdir($tmpDir); 28: 29: $h = fopen($realFilename, "w"); 30: fwrite($h, "Hello World"); 31: fclose($h); 32: 33: symlink($realFilename, $sortFilename); 34: symlink($sortFilename, $linkOfLink); 35: link($realFilename, $hardFilename); 36: 37: 38: 39: echo "*** testing reading of links ***\n"; 40: echo "soft link:"; 41: readFile2($sortFilename); 42: echo "hard link:"; 43: readFile2($hardFilename); 44: echo "link of link:"; 45: readFile2($linkOfLink); 46: 47: echo "*** test appending to links ***\n"; 48: echo "soft link:"; 49: appendFile($sortFilename); 50: echo "hard link:"; 51: appendFile($hardFilename); 52: echo "link of link:"; 53: appendFile($linkOfLink); 54: 55: echo "*** test overwriting links ***\n"; 56: echo "soft link:"; 57: writeFile($sortFilename); 58: echo "hard link:"; 59: writeFile($hardFilename); 60: echo "link of link:"; 61: writeFile($linkOfLink); 62: 63: unlink($linkOfLink); 64: unlink($sortFilename); 65: unlink($hardFilename); 66: unlink($realFilename); 67: chdir(".."); 68: rmdir($tmpDir); 69: 70: function readFile2($file) { 71: $h = fopen($file, 'r'); 72: fpassthru($h); 73: fclose($h); 74: echo "\n"; 75: } 76: 77: function appendFile($file) { 78: $h = fopen($file, 'a+'); 79: fwrite($h, ' again!'); 80: fseek($h, 0); 81: fpassthru($h); 82: fclose($h); 83: echo "\n"; 84: } 85: 86: function writeFile($file) { 87: $h = fopen($file, 'w'); 88: fwrite($h, 'Goodbye World'); 89: fclose($h); 90: readFile2($file); 91: } 92: 93: 94: ?> 95: ===DONE=== 96: --EXPECT-- 97: *** Testing fopen() : variation *** 98: *** testing reading of links *** 99: soft link:Hello World 100: hard link:Hello World 101: link of link:Hello World 102: *** test appending to links *** 103: soft link:Hello World again! 104: hard link:Hello World again! again! 105: link of link:Hello World again! again! again! 106: *** test overwriting links *** 107: soft link:Goodbye World 108: hard link:Goodbye World 109: link of link:Goodbye World 110: ===DONE===