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

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

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