1--TEST--
2Test sprintf() function : usage variations - char formats with resource 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 resource values ***\n";
11
12// resource type variable
13$fp = fopen (__FILE__, "r");
14$dfp = opendir ( dirname(__FILE__) );
15
16// array of resource types
17$resource_values = array (
18  $fp,
19  $dfp
20);
21
22// array of char formats
23$char_formats = array(
24  "%c", "%hc", "%lc",
25  "%Lc", " %c", "%c ",
26  "\t%c", "\n%c", "%4c",
27  "%30c", "%[a-bA-B@#$&]", "%*c"
28);
29
30$count = 1;
31foreach($resource_values as $resource_value) {
32  echo "\n-- Iteration $count --\n";
33
34  foreach($char_formats as $format) {
35    var_dump( sprintf($format, $resource_value) );
36  }
37  $count++;
38};
39
40// closing the resources
41fclose($fp);
42closedir($dfp);
43
44?>
45===DONE===
46--EXPECTF--
47*** Testing sprintf() : char formats with resource values ***
48
49-- Iteration 1 --
50string(1) "%a"
51string(1) "c"
52string(1) "%a"
53string(1) "c"
54string(2) " %a"
55string(2) "%a "
56string(2) "	%a"
57string(2) "
58%a"
59string(1) "%a"
60string(1) "%a"
61string(11) "a-bA-B@#$&]"
62string(1) "c"
63
64-- Iteration 2 --
65string(1) "%a"
66string(1) "%a"
67string(1) "%a"
68string(1) "c"
69string(2) " %a"
70string(2) "%a "
71string(2) "	%a"
72string(2) "
73%a"
74string(1) "%a"
75string(1) "%a"
76string(11) "a-bA-B@#$&]"
77string(1) "c"
78===DONE===
79