Return to fscanf_error.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / file |
1.1 misho 1: --TEST-- 2: Test fscanf() function: error conditions 3: 4: --FILE-- 5: <?php 6: /* 7: Prototype: mixed fscanf ( resource $handle, string $format [, mixed &$...] ); 8: Description: Parses input from a file according to a format 9: */ 10: 11: echo "*** Testing fscanf() for error conditions ***\n"; 12: $file_path = dirname(__FILE__); 13: 14: $filename = "$file_path/fscanf_error.tmp"; 15: $file_handle = fopen($filename, 'w'); 16: if ($file_handle == false) 17: exit("Error:failed to open file $filename"); 18: fwrite($file_handle, "hello world"); 19: fclose($file_handle); 20: 21: // zero argument 22: var_dump( fscanf() ); 23: 24: // single argument 25: $file_handle = fopen($filename, 'r'); 26: if ($file_handle == false) 27: exit("Error:failed to open file $filename"); 28: var_dump( fscanf($file_handle) ); 29: fclose($file_handle); 30: 31: // invalid file handle 32: var_dump( fscanf($file_handle, "%s") ); 33: 34: // number of formats in format strings not matching the no of variables 35: $file_handle = fopen($filename, 'r'); 36: if ($file_handle == false) 37: exit("Error:failed to open file $filename"); 38: var_dump( fscanf($file_handle, "%d%s%f", $int_var, $string_var) ); 39: fclose($file_handle); 40: 41: // different invalid format strings 42: $invalid_formats = array( $undefined_var, undefined_constant, 43: "%", "%h", "%.", "%d%m" 44: ); 45: 46: 47: // looping to use various invalid formats with fscanf() 48: foreach($invalid_formats as $format) { 49: $file_handle = fopen($filename, 'r'); 50: if ($file_handle == false) 51: exit("Error:failed to open file $filename"); 52: var_dump( fscanf($file_handle, $format) ); 53: fclose($file_handle); 54: } 55: 56: echo "\n*** Done ***"; 57: ?> 58: --CLEAN-- 59: <?php 60: $file_path = dirname(__FILE__); 61: $filename = "$file_path/fscanf_error.tmp"; 62: unlink($filename); 63: ?> 64: --EXPECTF-- 65: *** Testing fscanf() for error conditions *** 66: 67: Warning: fscanf() expects at least 2 parameters, 0 given in %s on line %d 68: NULL 69: 70: Warning: fscanf() expects at least 2 parameters, 1 given in %s on line %d 71: NULL 72: 73: Warning: fscanf(): %d is not a valid File-Handle resource in %s on line %d 74: bool(false) 75: 76: Warning: fscanf(): Different numbers of variable names and field specifiers in %s on line %d 77: int(-1) 78: 79: Notice: Undefined variable: undefined_var in %s on line %d 80: 81: Notice: Use of undefined constant undefined_constant - assumed 'undefined_constant' in %s on line %d 82: array(0) { 83: } 84: array(0) { 85: } 86: 87: Warning: fscanf(): Bad scan conversion character " in %s on line %d 88: NULL 89: 90: Warning: fscanf(): Bad scan conversion character " in %s on line %d 91: NULL 92: 93: Warning: fscanf(): Bad scan conversion character "." in %s on line %d 94: NULL 95: 96: Warning: fscanf(): Bad scan conversion character "m" in %s on line %d 97: NULL 98: 99: *** Done ***