1--TEST-- 2Test sprintf() function : usage variations - scientific formats with array values 3--FILE-- 4<?php 5/* Prototype : string sprintf(string $format [, mixed $arg1 [, mixed ...]]) 6 * Description: Return a formatted string 7 * Source code: ext/standard/formatted_print.c 8*/ 9 10echo "*** Testing sprintf() : scientific formats with array values ***\n"; 11 12// array of array values 13$array_values = array( 14 array(), 15 array(0), 16 array(1), 17 array(100000000000), 18 array(.0000001), 19 array(10e2), 20 array(NULL), 21 array(null), 22 array("string"), 23 array(true), 24 array(TRUE), 25 array(false), 26 array(FALSE), 27 array(1,2,3,4), 28 array(1 => "One", "two" => 2) 29); 30 31// array of scientific formats 32$scientific_formats = array( 33 "%e", "%he", "%le", 34 "%Le", " %e", "%e ", 35 "\t%e", "\n%e", "%4e", 36 "%30e", "%[0-1]", "%*e" 37); 38 39$count = 1; 40foreach($array_values as $array_value) { 41 echo "\n-- Iteration $count --\n"; 42 43 foreach($scientific_formats as $format) { 44 var_dump( sprintf($format, $array_value) ); 45 } 46 $count++; 47}; 48 49echo "Done"; 50?> 51--EXPECTF-- 52*** Testing sprintf() : scientific formats with array values *** 53 54-- Iteration 1 -- 55string(11) "0.000000e+0" 56string(1) "e" 57string(11) "0.000000e+0" 58string(1) "e" 59string(12) " 0.000000e+0" 60string(12) "0.000000e+0 " 61string(12) " 0.000000e+0" 62string(12) " 630.000000e+0" 64string(11) "0.000000e+0" 65string(30) " 0.000000e+0" 66string(4) "0-1]" 67string(1) "e" 68 69-- Iteration 2 -- 70string(11) "1.000000e+0" 71string(1) "e" 72string(11) "1.000000e+0" 73string(1) "e" 74string(12) " 1.000000e+0" 75string(12) "1.000000e+0 " 76string(12) " 1.000000e+0" 77string(12) " 781.000000e+0" 79string(11) "1.000000e+0" 80string(30) " 1.000000e+0" 81string(4) "0-1]" 82string(1) "e" 83 84-- Iteration 3 -- 85string(11) "1.000000e+0" 86string(1) "e" 87string(11) "1.000000e+0" 88string(1) "e" 89string(12) " 1.000000e+0" 90string(12) "1.000000e+0 " 91string(12) " 1.000000e+0" 92string(12) " 931.000000e+0" 94string(11) "1.000000e+0" 95string(30) " 1.000000e+0" 96string(4) "0-1]" 97string(1) "e" 98 99-- Iteration 4 -- 100string(11) "1.000000e+0" 101string(1) "e" 102string(11) "1.000000e+0" 103string(1) "e" 104string(12) " 1.000000e+0" 105string(12) "1.000000e+0 " 106string(12) " 1.000000e+0" 107string(12) " 1081.000000e+0" 109string(11) "1.000000e+0" 110string(30) " 1.000000e+0" 111string(4) "0-1]" 112string(1) "e" 113 114-- Iteration 5 -- 115string(11) "1.000000e+0" 116string(1) "e" 117string(11) "1.000000e+0" 118string(1) "e" 119string(12) " 1.000000e+0" 120string(12) "1.000000e+0 " 121string(12) " 1.000000e+0" 122string(12) " 1231.000000e+0" 124string(11) "1.000000e+0" 125string(30) " 1.000000e+0" 126string(4) "0-1]" 127string(1) "e" 128 129-- Iteration 6 -- 130string(11) "1.000000e+0" 131string(1) "e" 132string(11) "1.000000e+0" 133string(1) "e" 134string(12) " 1.000000e+0" 135string(12) "1.000000e+0 " 136string(12) " 1.000000e+0" 137string(12) " 1381.000000e+0" 139string(11) "1.000000e+0" 140string(30) " 1.000000e+0" 141string(4) "0-1]" 142string(1) "e" 143 144-- Iteration 7 -- 145string(11) "1.000000e+0" 146string(1) "e" 147string(11) "1.000000e+0" 148string(1) "e" 149string(12) " 1.000000e+0" 150string(12) "1.000000e+0 " 151string(12) " 1.000000e+0" 152string(12) " 1531.000000e+0" 154string(11) "1.000000e+0" 155string(30) " 1.000000e+0" 156string(4) "0-1]" 157string(1) "e" 158 159-- Iteration 8 -- 160string(11) "1.000000e+0" 161string(1) "e" 162string(11) "1.000000e+0" 163string(1) "e" 164string(12) " 1.000000e+0" 165string(12) "1.000000e+0 " 166string(12) " 1.000000e+0" 167string(12) " 1681.000000e+0" 169string(11) "1.000000e+0" 170string(30) " 1.000000e+0" 171string(4) "0-1]" 172string(1) "e" 173 174-- Iteration 9 -- 175string(11) "1.000000e+0" 176string(1) "e" 177string(11) "1.000000e+0" 178string(1) "e" 179string(12) " 1.000000e+0" 180string(12) "1.000000e+0 " 181string(12) " 1.000000e+0" 182string(12) " 1831.000000e+0" 184string(11) "1.000000e+0" 185string(30) " 1.000000e+0" 186string(4) "0-1]" 187string(1) "e" 188 189-- Iteration 10 -- 190string(11) "1.000000e+0" 191string(1) "e" 192string(11) "1.000000e+0" 193string(1) "e" 194string(12) " 1.000000e+0" 195string(12) "1.000000e+0 " 196string(12) " 1.000000e+0" 197string(12) " 1981.000000e+0" 199string(11) "1.000000e+0" 200string(30) " 1.000000e+0" 201string(4) "0-1]" 202string(1) "e" 203 204-- Iteration 11 -- 205string(11) "1.000000e+0" 206string(1) "e" 207string(11) "1.000000e+0" 208string(1) "e" 209string(12) " 1.000000e+0" 210string(12) "1.000000e+0 " 211string(12) " 1.000000e+0" 212string(12) " 2131.000000e+0" 214string(11) "1.000000e+0" 215string(30) " 1.000000e+0" 216string(4) "0-1]" 217string(1) "e" 218 219-- Iteration 12 -- 220string(11) "1.000000e+0" 221string(1) "e" 222string(11) "1.000000e+0" 223string(1) "e" 224string(12) " 1.000000e+0" 225string(12) "1.000000e+0 " 226string(12) " 1.000000e+0" 227string(12) " 2281.000000e+0" 229string(11) "1.000000e+0" 230string(30) " 1.000000e+0" 231string(4) "0-1]" 232string(1) "e" 233 234-- Iteration 13 -- 235string(11) "1.000000e+0" 236string(1) "e" 237string(11) "1.000000e+0" 238string(1) "e" 239string(12) " 1.000000e+0" 240string(12) "1.000000e+0 " 241string(12) " 1.000000e+0" 242string(12) " 2431.000000e+0" 244string(11) "1.000000e+0" 245string(30) " 1.000000e+0" 246string(4) "0-1]" 247string(1) "e" 248 249-- Iteration 14 -- 250string(11) "1.000000e+0" 251string(1) "e" 252string(11) "1.000000e+0" 253string(1) "e" 254string(12) " 1.000000e+0" 255string(12) "1.000000e+0 " 256string(12) " 1.000000e+0" 257string(12) " 2581.000000e+0" 259string(11) "1.000000e+0" 260string(30) " 1.000000e+0" 261string(4) "0-1]" 262string(1) "e" 263 264-- Iteration 15 -- 265string(11) "1.000000e+0" 266string(1) "e" 267string(11) "1.000000e+0" 268string(1) "e" 269string(12) " 1.000000e+0" 270string(12) "1.000000e+0 " 271string(12) " 1.000000e+0" 272string(12) " 2731.000000e+0" 274string(11) "1.000000e+0" 275string(30) " 1.000000e+0" 276string(4) "0-1]" 277string(1) "e" 278Done 279