1--TEST-- 2Test fscanf() function: usage variations - empty file 3--FILE-- 4<?php 5 6/* 7 Prototype: mixed fscanf ( resource $handle, string $format [, mixed &$...] ); 8 Description: Parses input from a file according to a format 9*/ 10 11/* Test fscanf() to scan an empty file */ 12 13$file_path = dirname(__FILE__); 14 15echo "*** Test fscanf(): to read an empty file ***\n"; 16 17// various formats 18$formats = array( "%d", "%f", "%e", "%u", " %s", "%x", "%o"); 19 20$counter = 1; 21 22// various read modes 23$modes = array("r", "rb", "rt", "r+", "r+b", "r+t", 24 "w+", "w+b", "w+t", 25 "a+", "a+b", "a+t" 26 ); 27 28$counter = 1; 29// reading the values from file using different integer formats 30foreach($modes as $mode) { 31 32 // create an empty file 33 $filename = "$file_path/fscanf_variation52.tmp"; 34 $file_handle = fopen($filename, "w"); 35 if($file_handle == false) 36 exit("Error:failed to open file $filename"); 37 //closing the file 38 fclose($file_handle); 39 40 // opening file in $mode mode 41 $file_handle = fopen($filename, $mode); 42 if($file_handle == false) { 43 exit("Error:failed to open file $filename"); 44 } 45 echo "\n-- iteration $counter --\n"; 46 47 foreach($formats as $format) { 48 var_dump( fscanf($file_handle,$format) ); 49 rewind($file_handle); 50 } 51 $counter++; 52 fclose($file_handle); 53 unlink($filename); 54} 55 56echo "\n*** Done ***"; 57?> 58--CLEAN-- 59<?php 60$file_path = dirname(__FILE__); 61$filename = "$file_path/fscanf_variation52.tmp"; 62if(file_exists($filename)) { 63 unlink($filename); 64} 65?> 66--EXPECT-- 67*** Test fscanf(): to read an empty file *** 68 69-- iteration 1 -- 70bool(false) 71bool(false) 72bool(false) 73bool(false) 74bool(false) 75bool(false) 76bool(false) 77 78-- iteration 2 -- 79bool(false) 80bool(false) 81bool(false) 82bool(false) 83bool(false) 84bool(false) 85bool(false) 86 87-- iteration 3 -- 88bool(false) 89bool(false) 90bool(false) 91bool(false) 92bool(false) 93bool(false) 94bool(false) 95 96-- iteration 4 -- 97bool(false) 98bool(false) 99bool(false) 100bool(false) 101bool(false) 102bool(false) 103bool(false) 104 105-- iteration 5 -- 106bool(false) 107bool(false) 108bool(false) 109bool(false) 110bool(false) 111bool(false) 112bool(false) 113 114-- iteration 6 -- 115bool(false) 116bool(false) 117bool(false) 118bool(false) 119bool(false) 120bool(false) 121bool(false) 122 123-- iteration 7 -- 124bool(false) 125bool(false) 126bool(false) 127bool(false) 128bool(false) 129bool(false) 130bool(false) 131 132-- iteration 8 -- 133bool(false) 134bool(false) 135bool(false) 136bool(false) 137bool(false) 138bool(false) 139bool(false) 140 141-- iteration 9 -- 142bool(false) 143bool(false) 144bool(false) 145bool(false) 146bool(false) 147bool(false) 148bool(false) 149 150-- iteration 10 -- 151bool(false) 152bool(false) 153bool(false) 154bool(false) 155bool(false) 156bool(false) 157bool(false) 158 159-- iteration 11 -- 160bool(false) 161bool(false) 162bool(false) 163bool(false) 164bool(false) 165bool(false) 166bool(false) 167 168-- iteration 12 -- 169bool(false) 170bool(false) 171bool(false) 172bool(false) 173bool(false) 174bool(false) 175bool(false) 176 177*** Done *** 178 179