1--TEST-- 2Test sprintf() function : usage variations - char formats with string 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() : char formats with string values ***\n"; 11 12// array of string 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); 33 34// array of char formats 35$char_formats = array( 36 "%c", "%hc", "%lc", 37 "%Lc", " %c", "%c ", 38 "\t%c", "\n%c", "%4c", 39 "%30c", "%[a-bA-B@#$&]", "%*c" 40); 41 42$count = 1; 43foreach($string_values as $string_value) { 44 echo "\n-- Iteration $count --\n"; 45 46 foreach($char_formats as $format) { 47 var_dump( sprintf($format, $string_value) ); 48 } 49 $count++; 50}; 51 52echo "Done"; 53?> 54--EXPECTF-- 55*** Testing sprintf() : char formats with string values *** 56 57-- Iteration 1 -- 58string(1) "" 59string(1) "c" 60string(1) "" 61string(1) "c" 62string(2) " " 63string(2) " " 64string(2) " " 65string(2) " 66" 67string(1) "" 68string(1) "" 69string(11) "a-bA-B@#$&]" 70string(1) "c" 71 72-- Iteration 2 -- 73string(1) "" 74string(1) "c" 75string(1) "" 76string(1) "c" 77string(2) " " 78string(2) " " 79string(2) " " 80string(2) " 81" 82string(1) "" 83string(1) "" 84string(11) "a-bA-B@#$&]" 85string(1) "c" 86 87-- Iteration 3 -- 88string(1) "" 89string(1) "c" 90string(1) "" 91string(1) "c" 92string(2) " " 93string(2) " " 94string(2) " " 95string(2) " 96" 97string(1) "" 98string(1) "" 99string(11) "a-bA-B@#$&]" 100string(1) "c" 101 102-- Iteration 4 -- 103string(1) "" 104string(1) "c" 105string(1) "" 106string(1) "c" 107string(2) " " 108string(2) " " 109string(2) " " 110string(2) " 111" 112string(1) "" 113string(1) "" 114string(11) "a-bA-B@#$&]" 115string(1) "c" 116 117-- Iteration 5 -- 118string(1) "" 119string(1) "c" 120string(1) "" 121string(1) "c" 122string(2) " " 123string(2) " " 124string(2) " " 125string(2) " 126" 127string(1) "" 128string(1) "" 129string(11) "a-bA-B@#$&]" 130string(1) "c" 131 132-- Iteration 6 -- 133string(1) "" 134string(1) "c" 135string(1) "" 136string(1) "c" 137string(2) " " 138string(2) " " 139string(2) " " 140string(2) " 141" 142string(1) "" 143string(1) "" 144string(11) "a-bA-B@#$&]" 145string(1) "c" 146 147-- Iteration 7 -- 148string(1) "" 149string(1) "c" 150string(1) "" 151string(1) "c" 152string(2) " " 153string(2) " " 154string(2) " " 155string(2) " 156" 157string(1) "" 158string(1) "" 159string(11) "a-bA-B@#$&]" 160string(1) "c" 161 162-- Iteration 8 -- 163string(1) "" 164string(1) "c" 165string(1) "" 166string(1) "c" 167string(2) " " 168string(2) " " 169string(2) " " 170string(2) " 171" 172string(1) "" 173string(1) "" 174string(11) "a-bA-B@#$&]" 175string(1) "c" 176 177-- Iteration 9 -- 178string(1) "" 179string(1) "c" 180string(1) "" 181string(1) "c" 182string(2) " " 183string(2) " " 184string(2) " " 185string(2) " 186" 187string(1) "" 188string(1) "" 189string(11) "a-bA-B@#$&]" 190string(1) "c" 191 192-- Iteration 10 -- 193string(1) "" 194string(1) "c" 195string(1) "" 196string(1) "c" 197string(2) " " 198string(2) " " 199string(2) " " 200string(2) " 201" 202string(1) "" 203string(1) "" 204string(11) "a-bA-B@#$&]" 205string(1) "c" 206 207-- Iteration 11 -- 208string(1) "" 209string(1) "c" 210string(1) "" 211string(1) "c" 212string(2) " " 213string(2) " " 214string(2) " " 215string(2) " 216" 217string(1) "" 218string(1) "" 219string(11) "a-bA-B@#$&]" 220string(1) "c" 221 222-- Iteration 12 -- 223string(1) "" 224string(1) "c" 225string(1) "" 226string(1) "c" 227string(2) " " 228string(2) " " 229string(2) " " 230string(2) " 231" 232string(1) "" 233string(1) "" 234string(11) "a-bA-B@#$&]" 235string(1) "c" 236 237-- Iteration 13 -- 238string(1) "" 239string(1) "c" 240string(1) "" 241string(1) "c" 242string(2) " " 243string(2) " " 244string(2) " " 245string(2) " 246" 247string(1) "" 248string(1) "" 249string(11) "a-bA-B@#$&]" 250string(1) "c" 251 252-- Iteration 14 -- 253string(1) "" 254string(1) "c" 255string(1) "" 256string(1) "c" 257string(2) " " 258string(2) " " 259string(2) " " 260string(2) " 261" 262string(1) "" 263string(1) "" 264string(11) "a-bA-B@#$&]" 265string(1) "c" 266 267-- Iteration 15 -- 268string(1) "" 269string(1) "c" 270string(1) "" 271string(1) "c" 272string(2) " " 273string(2) " " 274string(2) " " 275string(2) " 276" 277string(1) "" 278string(1) "" 279string(11) "a-bA-B@#$&]" 280string(1) "c" 281 282-- Iteration 16 -- 283string(1) "" 284string(1) "c" 285string(1) "" 286string(1) "c" 287string(2) " " 288string(2) " " 289string(2) " " 290string(2) " 291" 292string(1) "" 293string(1) "" 294string(11) "a-bA-B@#$&]" 295string(1) "c" 296 297-- Iteration 17 -- 298string(1) "" 299string(1) "c" 300string(1) "" 301string(1) "c" 302string(2) " " 303string(2) " " 304string(2) " " 305string(2) " 306" 307string(1) "" 308string(1) "" 309string(11) "a-bA-B@#$&]" 310string(1) "c" 311 312-- Iteration 18 -- 313string(1) "" 314string(1) "c" 315string(1) "" 316string(1) "c" 317string(2) " " 318string(2) " " 319string(2) " " 320string(2) " 321" 322string(1) "" 323string(1) "" 324string(11) "a-bA-B@#$&]" 325string(1) "c" 326Done