-
Notifications
You must be signed in to change notification settings - Fork 105
/
Copy pathprintf.xml
182 lines (169 loc) · 4.72 KB
/
printf.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 099842f34289b4cf932863e1f83d0e9a144d3b06 Maintainer: daijie Status: ready -->
<!-- CREDITS: mowangjuanzi -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.printf">
<refnamediv>
<refname>printf</refname>
<refpurpose>输出格式化字符串</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>printf</methodname>
<methodparam><type>string</type><parameter>format</parameter></methodparam>
<methodparam rep="repeat"><type>mixed</type><parameter>values</parameter></methodparam>
</methodsynopsis>
<simpara>
依据 <parameter>format</parameter> 格式参数产生输出。
</simpara>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
&strings.parameter.format;
<varlistentry>
<term><parameter>values</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
返回输出字符串的长度。
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
&strings.errors.sprintf;
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
&strings.changelog.sprintf;
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>printf</function>:多种 format 格式的示例</title>
<programlisting role="php">
<![CDATA[
<?php
$n = 43951789;
$u = -43951789;
$c = 65; // ASCII 65 is 'A'
// 注意两个 %% 的情况,这会打印一个字面上的 '%' 字符
printf("%%b = '%b'\n", $n); // 二进制表示
printf("%%c = '%c'\n", $c); // 打印 ascii 字符,与 chr() 函数相同
printf("%%d = '%d'\n", $n); // 标准整数表示
printf("%%e = '%e'\n", $n); // 科学计数法
printf("%%u = '%u'\n", $n); // 无符号正整数表示
printf("%%u = '%u'\n", $u); // 无符号负整数表示
printf("%%f = '%f'\n", $n); // 浮点数表示
printf("%%o = '%o'\n", $n); // 八进制表示
printf("%%s = '%s'\n", $n); // 字符串表示
printf("%%x = '%x'\n", $n); // 十六进制表示(小写)
printf("%%X = '%X'\n", $n); // 十六进制表示(大写)
printf("%%+d = '%+d'\n", $n); // 正整数上的符号说明符
printf("%%+d = '%+d'\n", $u); // 负整数上的符号说明符
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
%b = '10100111101010011010101101'
%c = 'A'
%d = '43951789'
%e = '4.39518e+7'
%u = '43951789'
%u = '4251015507'
%f = '43951789.000000'
%o = '247523255'
%s = '43951789'
%x = '29ea6ad'
%X = '29EA6AD'
%+d = '+43951789'
%+d = '-43951789'
]]>
</screen>
</example>
<example>
<title><function>printf</function>:字符串说明符</title>
<programlisting role="php">
<![CDATA[
<?php
$s = 'monkey';
$t = 'many monkeys';
printf("[%s]\n", $s); // 标准字符串输出
printf("[%10s]\n", $s); // 带空格的右对齐
printf("[%-10s]\n", $s); // 带空格的左对齐
printf("[%010s]\n", $s); // 零填充也适用于字符串
printf("[%'#10s]\n", $s); // 使用自定义填充字符“#”
printf("[%'#*s]\n", 10, $s); // 提供填充的宽度作为附加参数
printf("[%10.9s]\n", $t); // 右对齐,但截断 8 个字符
printf("[%-10.9s]\n", $t); // 左对齐,但截断 8 个字符
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
[monkey]
[ monkey]
[monkey ]
[0000monkey]
[####monkey]
[####monkey]
[ many monk]
[many monk ]
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>print</function></member>
<member><function>sprintf</function></member>
<member><function>fprintf</function></member>
<member><function>vprintf</function></member>
<member><function>vsprintf</function></member>
<member><function>vfprintf</function></member>
<member><function>sscanf</function></member>
<member><function>fscanf</function></member>
<member><function>number_format</function></member>
<member><function>date</function></member>
<member><function>flush</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->