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

1.1     ! misho       1: --TEST--
        !             2: Test vfprintf() function : usage variations - int formats with int 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() when different int formats and int values are passed to
        !            12:  * the '$format' and '$args' arguments of the function
        !            13: */
        !            14: 
        !            15: echo "*** Testing vfprintf() : int formats with int values ***\n";
        !            16: 
        !            17: 
        !            18: // defining array of int formats
        !            19: $formats = array(
        !            20:   "%d",
        !            21:   "%+d %-d %D",
        !            22:   "%ld %Ld, %4d %-4d",
        !            23:   "%10.4d %-10.4d %04d %04.4d",
        !            24:   "%'#2d %'2d %'$2d %'_2d",
        !            25:   "%d %d %d %d",
        !            26:   "% %%d d%",
        !            27:   '%3$d %4$d %1$d %2$d'
        !            28: );
        !            29: 
        !            30: // Arrays of int values for the format defined in $format.
        !            31: // Each sub array contains int values which correspond to each format string in $format
        !            32: $args_array = array(
        !            33:   array(0),
        !            34:   array(-1, 1, +22),
        !            35:   array(2147483647, -2147483648, +2147483640, -2147483640),
        !            36:   array(123456, 12345678, -1234567, 1234567),
        !            37:   array(111, 2222, 333333, 44444444),
        !            38:   array(0x123b, 0xfAb, 0123, 01293),
        !            39:   array(1234, -5678, 2345),
        !            40:   array(3, 4, 1, 2)
        !            41: 
        !            42: );
        !            43: 
        !            44: // looping to test vfprintf() with different int formats from the above $format array
        !            45: // and with int values from the above $args_array array
        !            46: 
        !            47: /* creating dumping file */
        !            48: $data_file = dirname(__FILE__) . '/dump.txt';
        !            49: if (!($fp = fopen($data_file, 'wt')))
        !            50:    return;
        !            51: 
        !            52: $counter = 1;
        !            53: foreach($formats as $format) {
        !            54:   fprintf($fp, "\n-- Iteration %d --\n",$counter);
        !            55:   vfprintf($fp, $format, $args_array[$counter-1]);
        !            56:   $counter++;
        !            57: }
        !            58: 
        !            59: fclose($fp);
        !            60: print_r(file_get_contents($data_file));
        !            61: echo "\n";
        !            62: 
        !            63: unlink($data_file);
        !            64: 
        !            65: ?>
        !            66: ===DONE===
        !            67: --EXPECT--
        !            68: *** Testing vfprintf() : int formats with int values ***
        !            69: 
        !            70: -- Iteration 1 --
        !            71: 0
        !            72: -- Iteration 2 --
        !            73: -1 1 
        !            74: -- Iteration 3 --
        !            75: 2147483647 d, 2147483640 -2147483640
        !            76: -- Iteration 4 --
        !            77:     123456 12345678   -1234567 1234567
        !            78: -- Iteration 5 --
        !            79: 111 2222 333333 44444444
        !            80: -- Iteration 6 --
        !            81: 4667 4011 83 10
        !            82: -- Iteration 7 --
        !            83: %-5678 d
        !            84: -- Iteration 8 --
        !            85: 1 2 3 4
        !            86: ===DONE===
        !            87: 

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