1--TEST-- 2SplFileObject::fputcsv(): Usage variations -- with line without any CSV fields 3--FILE-- 4<?php 5 6/* Testing fputcsv() to write to a file when the field has no CSV format */ 7 8echo "*** Testing fputcsv() : with no CSV format in the field ***\n"; 9 10/* the array is with three elements in it. Each element should be read as 11 1st element is delimiter, 2nd element is enclosure 12 and 3rd element is csv fields 13*/ 14 15$fields = array( array('water_fruit\n'), 16 array("water_fruit\n"), 17 array("") 18 ); 19 20$file_path = __DIR__; 21$file = "$file_path/fputcsv_variation10.tmp"; 22 23$file_modes = array ("r+", "r+b", "r+t", 24 "a+", "a+b", "a+t", 25 "w+", "w+b", "w+t", 26 "x+", "x+b", "x+t"); 27 28$loop_counter = 1; 29foreach ($fields as $field) { 30 for($mode_counter = 0; $mode_counter < count($file_modes); $mode_counter++) { 31 32 echo "\n-- file opened in $file_modes[$mode_counter] --\n"; 33 // create the file and add the content with has csv fields 34 if ( strstr($file_modes[$mode_counter], "r") ) { 35 $fo = new SplFileObject($file, 'w'); 36 } else { 37 $fo = new SplFileObject($file, $file_modes[$mode_counter]); 38 } 39 $csv_field = $field; 40 41 // write to a file in csv format 42 var_dump( $fo->fputcsv($csv_field) ); 43 44 // check the file pointer position and eof 45 var_dump( $fo->ftell() ); 46 var_dump( $fo->eof() ); 47 //close the file 48 unset($fo); 49 50 // print the file contents 51 var_dump( file_get_contents($file) ); 52 53 //delete file 54 unlink($file); 55 } //end of mode loop 56} // end of foreach 57 58echo "Done\n"; 59?> 60--EXPECTF-- 61*** Testing fputcsv() : with no CSV format in the field *** 62 63-- file opened in r+ -- 64int(16) 65int(16) 66bool(false) 67string(16) ""water_fruit\n" 68" 69 70-- file opened in r+b -- 71int(16) 72int(16) 73bool(false) 74string(16) ""water_fruit\n" 75" 76 77-- file opened in r+t -- 78int(16) 79int(16) 80bool(false) 81string(%d) ""water_fruit\n" 82" 83 84-- file opened in a+ -- 85int(16) 86int(16) 87bool(false) 88string(16) ""water_fruit\n" 89" 90 91-- file opened in a+b -- 92int(16) 93int(16) 94bool(false) 95string(16) ""water_fruit\n" 96" 97 98-- file opened in a+t -- 99int(16) 100int(16) 101bool(false) 102string(%d) ""water_fruit\n" 103" 104 105-- file opened in w+ -- 106int(16) 107int(16) 108bool(false) 109string(16) ""water_fruit\n" 110" 111 112-- file opened in w+b -- 113int(16) 114int(16) 115bool(false) 116string(16) ""water_fruit\n" 117" 118 119-- file opened in w+t -- 120int(16) 121int(16) 122bool(false) 123string(%d) ""water_fruit\n" 124" 125 126-- file opened in x+ -- 127int(16) 128int(16) 129bool(false) 130string(16) ""water_fruit\n" 131" 132 133-- file opened in x+b -- 134int(16) 135int(16) 136bool(false) 137string(16) ""water_fruit\n" 138" 139 140-- file opened in x+t -- 141int(16) 142int(16) 143bool(false) 144string(%d) ""water_fruit\n" 145" 146 147-- file opened in r+ -- 148int(15) 149int(15) 150bool(false) 151string(15) ""water_fruit 152" 153" 154 155-- file opened in r+b -- 156int(15) 157int(15) 158bool(false) 159string(15) ""water_fruit 160" 161" 162 163-- file opened in r+t -- 164int(15) 165int(15) 166bool(false) 167string(%d) ""water_fruit 168" 169" 170 171-- file opened in a+ -- 172int(15) 173int(15) 174bool(false) 175string(15) ""water_fruit 176" 177" 178 179-- file opened in a+b -- 180int(15) 181int(15) 182bool(false) 183string(15) ""water_fruit 184" 185" 186 187-- file opened in a+t -- 188int(15) 189int(15) 190bool(false) 191string(%d) ""water_fruit 192" 193" 194 195-- file opened in w+ -- 196int(15) 197int(15) 198bool(false) 199string(15) ""water_fruit 200" 201" 202 203-- file opened in w+b -- 204int(15) 205int(15) 206bool(false) 207string(15) ""water_fruit 208" 209" 210 211-- file opened in w+t -- 212int(15) 213int(15) 214bool(false) 215string(%d) ""water_fruit 216" 217" 218 219-- file opened in x+ -- 220int(15) 221int(15) 222bool(false) 223string(15) ""water_fruit 224" 225" 226 227-- file opened in x+b -- 228int(15) 229int(15) 230bool(false) 231string(15) ""water_fruit 232" 233" 234 235-- file opened in x+t -- 236int(15) 237int(15) 238bool(false) 239string(%d) ""water_fruit 240" 241" 242 243-- file opened in r+ -- 244int(1) 245int(1) 246bool(false) 247string(1) " 248" 249 250-- file opened in r+b -- 251int(1) 252int(1) 253bool(false) 254string(1) " 255" 256 257-- file opened in r+t -- 258int(1) 259int(1) 260bool(false) 261string(%d) " 262" 263 264-- file opened in a+ -- 265int(1) 266int(1) 267bool(false) 268string(1) " 269" 270 271-- file opened in a+b -- 272int(1) 273int(1) 274bool(false) 275string(1) " 276" 277 278-- file opened in a+t -- 279int(1) 280int(1) 281bool(false) 282string(%d) " 283" 284 285-- file opened in w+ -- 286int(1) 287int(1) 288bool(false) 289string(1) " 290" 291 292-- file opened in w+b -- 293int(1) 294int(1) 295bool(false) 296string(1) " 297" 298 299-- file opened in w+t -- 300int(1) 301int(1) 302bool(false) 303string(%d) " 304" 305 306-- file opened in x+ -- 307int(1) 308int(1) 309bool(false) 310string(1) " 311" 312 313-- file opened in x+b -- 314int(1) 315int(1) 316bool(false) 317string(1) " 318" 319 320-- file opened in x+t -- 321int(1) 322int(1) 323bool(false) 324string(%d) " 325" 326Done 327