Annotation of embedaddon/php/ext/standard/tests/strings/vfprintf_variation9.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Test vfprintf() function : usage variations - char formats with char values
        !             3: --FILE--
        !             4: <?php
        !             5: /* Prototype  : int vfprintf  ( resource $handle  , string $format , array $args  )
        !             6:  * Description: Write a formatted string to a stream
        !             7:  * Source code: ext/standard/formatted_print.c
        !             8: */
        !             9: 
        !            10: /*
        !            11: * Test vfprintf() for char formats with an array of chars passed to the function
        !            12: */
        !            13: 
        !            14: echo "*** Testing vfprintf() : char formats with char values ***\n";
        !            15: 
        !            16: 
        !            17: // defining array of char formats
        !            18: $formats = array(
        !            19:   "%c",
        !            20:   "%+c %-c %C",
        !            21:   "%lc %Lc, %4c %-4c",
        !            22:   "%10.4c %-10.4c %04c %04.4c",
        !            23:   "%'#2c %'2c %'$2c %'_2c",
        !            24:   "%c %c %c %c",
        !            25:   "% %%c c%",
        !            26:   '%3$c %4$c %1$c %2$c'
        !            27: );
        !            28: 
        !            29: // Arrays of char values for the format defined in $format.
        !            30: // Each sub array contains char values which correspond to each format string in $format
        !            31: $args_array = array(
        !            32:   array(0),
        !            33:   array('c', 67, 68),
        !            34:   array(' ', " ", -67, +67),
        !            35:   array(97, -97, 98, +98),
        !            36:   array(97, -97, 98, +98),
        !            37:   array(0x123b, 0xfAb, 0123, 01293),
        !            38:   array(38, -1234, 2345),
        !            39:   array(67, 68, 65, 66)
        !            40: 
        !            41: );
        !            42: 
        !            43: /* creating dumping file */
        !            44: $data_file = dirname(__FILE__) . '/dump.txt';
        !            45: if (!($fp = fopen($data_file, 'wt')))
        !            46:    return;
        !            47: 
        !            48: // looping to test vfprintf() with different char formats from the above $format array
        !            49: // and with char values from the above $args_array array
        !            50: $counter = 1;
        !            51: foreach($formats as $format) {
        !            52:   fprintf($fp, "\n-- Iteration %d --\n",$counter);
        !            53:   vfprintf($fp, $format, $args_array[$counter-1]);
        !            54:   $counter++;
        !            55: }
        !            56: 
        !            57: fclose($fp);
        !            58: print_r(file_get_contents($data_file));
        !            59: echo "\n";
        !            60: 
        !            61: unlink($data_file);
        !            62:  
        !            63: ?>
        !            64: ===DONE===
        !            65: --EXPECTF--
        !            66: *** Testing vfprintf() : char formats with char values ***
        !            67: 
        !            68: -- Iteration 1 --
        !            69: 
        !            70: -- Iteration 2 --
        !            71:  C 
        !            72: -- Iteration 3 --
        !            73:  c, ½ C
        !            74: -- Iteration 4 --
        !            75: a Ÿ b b
        !            76: -- Iteration 5 --
        !            77: a Ÿ b b
        !            78: -- Iteration 6 --
        !            79: ; « S 
        !            80: 
        !            81: -- Iteration 7 --
        !            82: %. c
        !            83: -- Iteration 8 --
        !            84: A B C D
        !            85: ===DONE===

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