Annotation of embedaddon/php/ext/standard/tests/strings/vsprintf_variation9.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test vsprintf() function : usage variations - char formats with char values
                      3: --FILE--
                      4: <?php
                      5: /* Prototype  : string vsprintf(string format, array args)
                      6:  * Description: Return a formatted string 
                      7:  * Source code: ext/standard/formatted_print.c
                      8: */
                      9: 
                     10: /*
                     11: * Test vsprintf() for char formats with an array of chars passed to the function
                     12: */
                     13: 
                     14: echo "*** Testing vsprintf() : 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: // looping to test vsprintf() with different char formats from the above $format array
                     44: // and with char values from the above $args_array array
                     45: $counter = 1;
                     46: foreach($formats as $format) {
                     47:   echo "\n-- Iteration $counter --\n";   
                     48:   var_dump( vsprintf($format, $args_array[$counter-1]) );
                     49:   $counter++;
                     50: }
                     51: 
                     52: echo "Done";
                     53: ?>
                     54: 
                     55: --EXPECTF--
                     56: *** Testing vsprintf() : char formats with char values ***
                     57: 
                     58: -- Iteration 1 --
                     59: string(1) ""
                     60: 
                     61: -- Iteration 2 --
                     62: string(4) " C "
                     63: 
                     64: -- Iteration 3 --
                     65: string(8) " c, ½ C"
                     66: 
                     67: -- Iteration 4 --
                     68: string(7) "a Ÿ b b"
                     69: 
                     70: -- Iteration 5 --
                     71: string(7) "a Ÿ b b"
                     72: 
                     73: -- Iteration 6 --
                     74: string(7) "; « S 
                     75: "
                     76: 
                     77: -- Iteration 7 --
                     78: string(4) "%. c"
                     79: 
                     80: -- Iteration 8 --
                     81: string(7) "A B C D"
                     82: Done

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