-
Notifications
You must be signed in to change notification settings - Fork 105
/
Copy pathmin.xml
186 lines (176 loc) · 5.7 KB
/
min.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
183
184
185
186
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 9d044185431afc63026546899216053820ac5d64 Maintainer: dallas Status: ready -->
<!-- CREDITS: mowangjuanzi, Luffy -->
<refentry xml:id="function.min" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>min</refname>
<refpurpose>找出最小值</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>min</methodname>
<methodparam><type>mixed</type><parameter>value</parameter></methodparam>
<methodparam rep="repeat"><type>mixed</type><parameter>values</parameter></methodparam>
</methodsynopsis>
<simpara>替代签名(不支持命名参数):</simpara>
<methodsynopsis>
<type>mixed</type><methodname>min</methodname>
<methodparam><type>array</type><parameter>value_array</parameter></methodparam>
</methodsynopsis>
<para>
如果仅有一个参数且为数组,<function>min</function>
返回该数组中最小的值。如果给出了两个或更多参数,
<function>min</function> 会返回这些值中最小的一个。
</para>
<note>
<para>
不同类型的值将使用<link linkend="language.operators.comparison">标准比较规则</link>进行比较。例如,一个非数字
<type>string</type> 与 <type>int</type> 比较时就当做是 <literal>0</literal>,但多个非数字
<type>string</type> 值将会按照字母数字比较。返回的实际值是未应用任何转换的原始类型。
</para>
</note>
<caution>
<simpara>
传递不同类型的参数时要小心,因为 <function>min</function> 会产生不可预测的结果。
</simpara>
</caution>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>value</parameter></term>
<listitem>
<para>
任何<link linkend="language.operators.comparison">可比较</link>的值。
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>values</parameter></term>
<listitem>
<para>
任何<link linkend="language.operators.comparison">可比较</link>的值。
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>value_array</parameter></term>
<listitem>
<para>
包含值的数组。
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<function>min</function> 根据标准比较返回认为是“最小”的参数值。如果不同类型的多个值认为相等(比如
<literal>0</literal> 与 <literal>'abc'</literal>),则将会返回提供给函数的第一个值。
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
如果传递空数组,<function>min</function> 抛出 <classname>ValueError</classname>。
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
<function>min</function> 现在失败时会抛出 <classname>ValueError</classname>;之前会返回
&false; 并发出 <constant>E_WARNING</constant> 错误。
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>
由于 <link linkend="migration80.incompatible.core.string-number-comparision">字符串到数字的比较</link>
已经改变,<function>min</function> 在这些情况下不再根据参数的顺序返回不同的值。
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>min</function> 用法的示例</title>
<programlisting role="php">
<![CDATA[
<?php
echo min(2, 3, 1, 6, 7); // 1
echo min(array(2, 4, 5)); // 2
// Here we are comparing -1 < 0, so -1 is the lowest value
echo min('hello', -1); // -1
// With multiple arrays of different lengths, min returns the shortest
$val = min(array(2, 2, 2), array(1, 1, 1, 1)); // array(2, 2, 2)
// Multiple arrays of the same length are compared from left to right
// so in our example: 2 == 2, but 4 < 5
$val = min(array(2, 4, 8), array(2, 5, 1)); // array(2, 4, 8)
// 如果同时给出数组和非数组,则绝对不会返回数组
// 因为比较认为数组大于任何值
$val = min('string', array(2, 5, 7), 42); // string
// If one argument is NULL or a boolean, it will be compared against
// other values using the rules FALSE < TRUE and NULL == FALSE regardless of the
// other types involved
// In the below examples, both -10 and 10 are treated as TRUE in the comparison
$val = min(-10, FALSE, 10); // FALSE
$val = min(-10, NULL, 10); // NULL
// 0, on the other hand, is treated as FALSE, so is "lower than" TRUE
$val = min(0, TRUE); // 0
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>max</function></member>
<member><function>count</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
-->