1--TEST-- 2Test sprintf() function : usage variations - float formats with strings 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() : float formats with strings ***\n"; 11 12// array of string type values 13$string_values = array ( 14 "", 15 '', 16 "0", 17 '0', 18 "1", 19 '1', 20 "\x01", 21 '\x01', 22 "\01", 23 '\01', 24 'string', 25 "string", 26 "true", 27 "FALSE", 28 'false', 29 'TRUE', 30 "NULL", 31 'null', 32 "123.456abc", 33 "+123.456abc" 34); 35 36// various float formats 37$float_formats = array( 38 "%f", "%hf", "%lf", 39 "%Lf", " %f", "%f ", 40 "\t%f", "\n%f", "%4f", 41 "%30f", "%[0-9]", "%*f" 42); 43 44$count = 1; 45foreach($string_values as $string_value) { 46 echo "\n-- Iteration $count --\n"; 47 48 foreach($float_formats as $format) { 49 var_dump( sprintf($format, $string_value) ); 50 } 51 $count++; 52}; 53 54echo "Done"; 55?> 56--EXPECTF-- 57*** Testing sprintf() : float formats with strings *** 58 59-- Iteration 1 -- 60string(8) "0.000000" 61string(1) "f" 62string(8) "0.000000" 63string(1) "f" 64string(9) " 0.000000" 65string(9) "0.000000 " 66string(9) " 0.000000" 67string(9) " 680.000000" 69string(8) "0.000000" 70string(30) " 0.000000" 71string(4) "0-9]" 72string(1) "f" 73 74-- Iteration 2 -- 75string(8) "0.000000" 76string(1) "f" 77string(8) "0.000000" 78string(1) "f" 79string(9) " 0.000000" 80string(9) "0.000000 " 81string(9) " 0.000000" 82string(9) " 830.000000" 84string(8) "0.000000" 85string(30) " 0.000000" 86string(4) "0-9]" 87string(1) "f" 88 89-- Iteration 3 -- 90string(8) "0.000000" 91string(1) "f" 92string(8) "0.000000" 93string(1) "f" 94string(9) " 0.000000" 95string(9) "0.000000 " 96string(9) " 0.000000" 97string(9) " 980.000000" 99string(8) "0.000000" 100string(30) " 0.000000" 101string(4) "0-9]" 102string(1) "f" 103 104-- Iteration 4 -- 105string(8) "0.000000" 106string(1) "f" 107string(8) "0.000000" 108string(1) "f" 109string(9) " 0.000000" 110string(9) "0.000000 " 111string(9) " 0.000000" 112string(9) " 1130.000000" 114string(8) "0.000000" 115string(30) " 0.000000" 116string(4) "0-9]" 117string(1) "f" 118 119-- Iteration 5 -- 120string(8) "1.000000" 121string(1) "f" 122string(8) "1.000000" 123string(1) "f" 124string(9) " 1.000000" 125string(9) "1.000000 " 126string(9) " 1.000000" 127string(9) " 1281.000000" 129string(8) "1.000000" 130string(30) " 1.000000" 131string(4) "0-9]" 132string(1) "f" 133 134-- Iteration 6 -- 135string(8) "1.000000" 136string(1) "f" 137string(8) "1.000000" 138string(1) "f" 139string(9) " 1.000000" 140string(9) "1.000000 " 141string(9) " 1.000000" 142string(9) " 1431.000000" 144string(8) "1.000000" 145string(30) " 1.000000" 146string(4) "0-9]" 147string(1) "f" 148 149-- Iteration 7 -- 150string(8) "0.000000" 151string(1) "f" 152string(8) "0.000000" 153string(1) "f" 154string(9) " 0.000000" 155string(9) "0.000000 " 156string(9) " 0.000000" 157string(9) " 1580.000000" 159string(8) "0.000000" 160string(30) " 0.000000" 161string(4) "0-9]" 162string(1) "f" 163 164-- Iteration 8 -- 165string(8) "0.000000" 166string(1) "f" 167string(8) "0.000000" 168string(1) "f" 169string(9) " 0.000000" 170string(9) "0.000000 " 171string(9) " 0.000000" 172string(9) " 1730.000000" 174string(8) "0.000000" 175string(30) " 0.000000" 176string(4) "0-9]" 177string(1) "f" 178 179-- Iteration 9 -- 180string(8) "0.000000" 181string(1) "f" 182string(8) "0.000000" 183string(1) "f" 184string(9) " 0.000000" 185string(9) "0.000000 " 186string(9) " 0.000000" 187string(9) " 1880.000000" 189string(8) "0.000000" 190string(30) " 0.000000" 191string(4) "0-9]" 192string(1) "f" 193 194-- Iteration 10 -- 195string(8) "0.000000" 196string(1) "f" 197string(8) "0.000000" 198string(1) "f" 199string(9) " 0.000000" 200string(9) "0.000000 " 201string(9) " 0.000000" 202string(9) " 2030.000000" 204string(8) "0.000000" 205string(30) " 0.000000" 206string(4) "0-9]" 207string(1) "f" 208 209-- Iteration 11 -- 210string(8) "0.000000" 211string(1) "f" 212string(8) "0.000000" 213string(1) "f" 214string(9) " 0.000000" 215string(9) "0.000000 " 216string(9) " 0.000000" 217string(9) " 2180.000000" 219string(8) "0.000000" 220string(30) " 0.000000" 221string(4) "0-9]" 222string(1) "f" 223 224-- Iteration 12 -- 225string(8) "0.000000" 226string(1) "f" 227string(8) "0.000000" 228string(1) "f" 229string(9) " 0.000000" 230string(9) "0.000000 " 231string(9) " 0.000000" 232string(9) " 2330.000000" 234string(8) "0.000000" 235string(30) " 0.000000" 236string(4) "0-9]" 237string(1) "f" 238 239-- Iteration 13 -- 240string(8) "0.000000" 241string(1) "f" 242string(8) "0.000000" 243string(1) "f" 244string(9) " 0.000000" 245string(9) "0.000000 " 246string(9) " 0.000000" 247string(9) " 2480.000000" 249string(8) "0.000000" 250string(30) " 0.000000" 251string(4) "0-9]" 252string(1) "f" 253 254-- Iteration 14 -- 255string(8) "0.000000" 256string(1) "f" 257string(8) "0.000000" 258string(1) "f" 259string(9) " 0.000000" 260string(9) "0.000000 " 261string(9) " 0.000000" 262string(9) " 2630.000000" 264string(8) "0.000000" 265string(30) " 0.000000" 266string(4) "0-9]" 267string(1) "f" 268 269-- Iteration 15 -- 270string(8) "0.000000" 271string(1) "f" 272string(8) "0.000000" 273string(1) "f" 274string(9) " 0.000000" 275string(9) "0.000000 " 276string(9) " 0.000000" 277string(9) " 2780.000000" 279string(8) "0.000000" 280string(30) " 0.000000" 281string(4) "0-9]" 282string(1) "f" 283 284-- Iteration 16 -- 285string(8) "0.000000" 286string(1) "f" 287string(8) "0.000000" 288string(1) "f" 289string(9) " 0.000000" 290string(9) "0.000000 " 291string(9) " 0.000000" 292string(9) " 2930.000000" 294string(8) "0.000000" 295string(30) " 0.000000" 296string(4) "0-9]" 297string(1) "f" 298 299-- Iteration 17 -- 300string(8) "0.000000" 301string(1) "f" 302string(8) "0.000000" 303string(1) "f" 304string(9) " 0.000000" 305string(9) "0.000000 " 306string(9) " 0.000000" 307string(9) " 3080.000000" 309string(8) "0.000000" 310string(30) " 0.000000" 311string(4) "0-9]" 312string(1) "f" 313 314-- Iteration 18 -- 315string(8) "0.000000" 316string(1) "f" 317string(8) "0.000000" 318string(1) "f" 319string(9) " 0.000000" 320string(9) "0.000000 " 321string(9) " 0.000000" 322string(9) " 3230.000000" 324string(8) "0.000000" 325string(30) " 0.000000" 326string(4) "0-9]" 327string(1) "f" 328 329-- Iteration 19 -- 330string(10) "123.456000" 331string(1) "f" 332string(10) "123.456000" 333string(1) "f" 334string(11) " 123.456000" 335string(11) "123.456000 " 336string(11) " 123.456000" 337string(11) " 338123.456000" 339string(10) "123.456000" 340string(30) " 123.456000" 341string(4) "0-9]" 342string(1) "f" 343 344-- Iteration 20 -- 345string(10) "123.456000" 346string(1) "f" 347string(10) "123.456000" 348string(1) "f" 349string(11) " 123.456000" 350string(11) "123.456000 " 351string(11) " 123.456000" 352string(11) " 353123.456000" 354string(10) "123.456000" 355string(30) " 123.456000" 356string(4) "0-9]" 357string(1) "f" 358Done