Annotation of embedaddon/php/ext/standard/tests/file/fscanf_variation38.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test fscanf() function: usage variations - hexa formats with boolean 
                      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 boolean data using different hexa format types */
                     12: 
                     13: $file_path = dirname(__FILE__);
                     14: 
                     15: echo "*** Test fscanf(): different hexa format types with boolean data ***\n"; 
                     16: 
                     17: // create a file
                     18: $filename = "$file_path/fscanf_variation38.tmp";
                     19: $file_handle = fopen($filename, "w");
                     20: if($file_handle == false)
                     21:   exit("Error:failed to open file $filename");
                     22: 
                     23: // array of boolean types
                     24: $bool_types = array (
                     25:   true,
                     26:   false,
                     27:   TRUE,
                     28:   FALSE,
                     29: );
                     30: 
                     31: $hexa_formats = array( "%x", "%hx", "%lx", "%Lx", " %x", "%x ", "% x", "\t%x", "\n%x", "%4x", "%30x", "%[0-9]", "%*x");
                     32: 
                     33: $counter = 1;
                     34: 
                     35: // writing to the file
                     36: foreach($bool_types as $value) {
                     37:   @fprintf($file_handle, $value);
                     38:   @fprintf($file_handle, "\n");
                     39: }
                     40: // closing the file
                     41: fclose($file_handle);
                     42: 
                     43: // opening the file for reading
                     44: $file_handle = fopen($filename, "r");
                     45: if($file_handle == false) {
                     46:   exit("Error:failed to open file $filename");
                     47: }
                     48: 
                     49: $counter = 1;
                     50: // reading the values from file using different hexa formats
                     51: foreach($hexa_formats as $hexa_format) {
                     52:   // rewind the file so that for every foreach iteration the file pointer starts from bof
                     53:   rewind($file_handle);
                     54:   echo "\n-- iteration $counter --\n";
                     55:   while( !feof($file_handle) ) {
                     56:     var_dump( fscanf($file_handle,$hexa_format) );
                     57:   }
                     58:   $counter++;
                     59: }
                     60: 
                     61: echo "\n*** Done ***";
                     62: ?>
                     63: --CLEAN--
                     64: <?php
                     65: $file_path = dirname(__FILE__);
                     66: $filename = "$file_path/fscanf_variation38.tmp";
                     67: unlink($filename);
                     68: ?>
                     69: --EXPECTF--
                     70: *** Test fscanf(): different hexa format types with boolean data ***
                     71: 
                     72: -- iteration 1 --
                     73: array(1) {
                     74:   [0]=>
                     75:   int(1)
                     76: }
                     77: NULL
                     78: array(1) {
                     79:   [0]=>
                     80:   int(1)
                     81: }
                     82: NULL
                     83: bool(false)
                     84: 
                     85: -- iteration 2 --
                     86: array(1) {
                     87:   [0]=>
                     88:   int(1)
                     89: }
                     90: NULL
                     91: array(1) {
                     92:   [0]=>
                     93:   int(1)
                     94: }
                     95: NULL
                     96: bool(false)
                     97: 
                     98: -- iteration 3 --
                     99: array(1) {
                    100:   [0]=>
                    101:   int(1)
                    102: }
                    103: NULL
                    104: array(1) {
                    105:   [0]=>
                    106:   int(1)
                    107: }
                    108: NULL
                    109: bool(false)
                    110: 
                    111: -- iteration 4 --
                    112: array(1) {
                    113:   [0]=>
                    114:   int(1)
                    115: }
                    116: NULL
                    117: array(1) {
                    118:   [0]=>
                    119:   int(1)
                    120: }
                    121: NULL
                    122: bool(false)
                    123: 
                    124: -- iteration 5 --
                    125: array(1) {
                    126:   [0]=>
                    127:   int(1)
                    128: }
                    129: NULL
                    130: array(1) {
                    131:   [0]=>
                    132:   int(1)
                    133: }
                    134: NULL
                    135: bool(false)
                    136: 
                    137: -- iteration 6 --
                    138: array(1) {
                    139:   [0]=>
                    140:   int(1)
                    141: }
                    142: NULL
                    143: array(1) {
                    144:   [0]=>
                    145:   int(1)
                    146: }
                    147: NULL
                    148: bool(false)
                    149: 
                    150: -- iteration 7 --
                    151: 
                    152: Warning: fscanf(): Bad scan conversion character " " in %s on line %d
                    153: NULL
                    154: 
                    155: Warning: fscanf(): Bad scan conversion character " " in %s on line %d
                    156: NULL
                    157: 
                    158: Warning: fscanf(): Bad scan conversion character " " in %s on line %d
                    159: NULL
                    160: 
                    161: Warning: fscanf(): Bad scan conversion character " " in %s on line %d
                    162: NULL
                    163: bool(false)
                    164: 
                    165: -- iteration 8 --
                    166: array(1) {
                    167:   [0]=>
                    168:   int(1)
                    169: }
                    170: NULL
                    171: array(1) {
                    172:   [0]=>
                    173:   int(1)
                    174: }
                    175: NULL
                    176: bool(false)
                    177: 
                    178: -- iteration 9 --
                    179: array(1) {
                    180:   [0]=>
                    181:   int(1)
                    182: }
                    183: NULL
                    184: array(1) {
                    185:   [0]=>
                    186:   int(1)
                    187: }
                    188: NULL
                    189: bool(false)
                    190: 
                    191: -- iteration 10 --
                    192: array(1) {
                    193:   [0]=>
                    194:   int(1)
                    195: }
                    196: NULL
                    197: array(1) {
                    198:   [0]=>
                    199:   int(1)
                    200: }
                    201: NULL
                    202: bool(false)
                    203: 
                    204: -- iteration 11 --
                    205: array(1) {
                    206:   [0]=>
                    207:   int(1)
                    208: }
                    209: NULL
                    210: array(1) {
                    211:   [0]=>
                    212:   int(1)
                    213: }
                    214: NULL
                    215: bool(false)
                    216: 
                    217: -- iteration 12 --
                    218: array(1) {
                    219:   [0]=>
                    220:   string(1) "1"
                    221: }
                    222: array(1) {
                    223:   [0]=>
                    224:   NULL
                    225: }
                    226: array(1) {
                    227:   [0]=>
                    228:   string(1) "1"
                    229: }
                    230: array(1) {
                    231:   [0]=>
                    232:   NULL
                    233: }
                    234: bool(false)
                    235: 
                    236: -- iteration 13 --
                    237: array(0) {
                    238: }
                    239: NULL
                    240: array(0) {
                    241: }
                    242: NULL
                    243: bool(false)
                    244: 
                    245: *** Done ***
                    246: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>