1--TEST-- 2est file_put_contents() function : usage variation - linked files 3--CREDITS-- 4Dave Kelsey <d_kelsey@uk.ibm.com> 5--SKIPIF-- 6<?php 7if(substr(PHP_OS, 0, 3) == "WIN") 8 die("skip Do not run on Windows"); 9?> 10--FILE-- 11<?php 12/* Prototype : int file_put_contents(string file, mixed data [, int flags [, resource context]]) 13 * Description: Write/Create a file with contents data and return the number of bytes written 14 * Source code: ext/standard/file.c 15 * Alias to functions: 16 */ 17 18echo "*** Testing file_put_contents() : usage variation ***\n"; 19 20$filename = __DIR__.'/filePutContentsVar9.tmp'; 21$softlink = __DIR__.'/filePutContentsVar9.SoftLink'; 22$hardlink = __DIR__.'/filePutContentsVar9.HardLink'; 23$chainlink = __DIR__.'/filePutContentsVar9.ChainLink'; 24 25 26// link files even though it original file doesn't exist yet 27symlink($filename, $softlink); 28symlink($softlink, $chainlink); 29 30 31// perform tests 32run_test($chainlink); 33run_test($softlink); 34 35//can only create a hardlink if the file exists. 36file_put_contents($filename,""); 37link($filename, $hardlink); 38run_test($hardlink); 39 40unlink($chainlink); 41unlink($softlink); 42unlink($hardlink); 43unlink($filename); 44 45 46function run_test($file) { 47 $data = "Here is some data"; 48 $extra = ", more data"; 49 var_dump(file_put_contents($file, $data)); 50 var_dump(file_put_contents($file, $extra, FILE_APPEND)); 51 readfile($file); 52 echo "\n"; 53} 54 55 56echo "\n*** Done ***\n"; 57?> 58--EXPECT-- 59*** Testing file_put_contents() : usage variation *** 60int(17) 61int(11) 62Here is some data, more data 63int(17) 64int(11) 65Here is some data, more data 66int(17) 67int(11) 68Here is some data, more data 69 70*** Done *** 71