-
Notifications
You must be signed in to change notification settings - Fork 79
/
Copy pathrandom-int.xml
153 lines (142 loc) · 4.21 KB
/
random-int.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
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 0ec8e36e0f649354b20c714080a903d32df4dbfb Maintainer: mumumu Status: ready -->
<refentry xml:id="function.random-int" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>random_int</refname>
<refpurpose>暗号学的にセキュアな方法で、等確率に出る整数を取得する</refpurpose>
</refnamediv>
<refsect1 role="description"><!-- {{{ -->
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>random_int</methodname>
<methodparam><type>int</type><parameter>min</parameter></methodparam>
<methodparam><type>int</type><parameter>max</parameter></methodparam>
</methodsynopsis>
<para>
指定された最小値と最大値の区間から、
等確率に選ばれるランダムな整数を生成します。
</para>
<para>
この関数が生成するランダムな値は、すべてのアプリケーションに対して適切です。
たとえば暗号化キーのような、長期間使うシークレットが挙げられます。
</para>
&csprng.sources;
&csprng.function.backport;
</refsect1><!-- }}} -->
<refsect1 role="parameters"><!-- {{{ -->
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>min</parameter></term>
<listitem>
<para>
返される最小値。
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>max</parameter></term>
<listitem>
<para>
返される最大値。
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1><!-- }}} -->
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
<parameter>min</parameter> と <parameter>max</parameter> の範囲で、
暗号学的にセキュアな方法で、
閉区間 [<parameter>min</parameter>, <parameter>max</parameter>]
の中から等確率に出るよう選ばれた整数値を返します。
<parameter>min</parameter> と <parameter>max</parameter>
も返される値に含みます。
</para>
</refsect1><!-- }}} -->
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<itemizedlist>
&csprng.errors;
<listitem>
<simpara>
<parameter>max</parameter> が <parameter>min</parameter> より小さい場合、
<classname>ValueError</classname> がスローされます。
</simpara>
</listitem>
</itemizedlist>
</refsect1><!-- }}} -->
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.2.0</entry>
<entry>
<acronym>CSPRNG</acronym> が失敗した場合に、
<classname>Random\RandomException</classname> をスローするようになりました。
これより前のバージョンでは、<classname>Exception</classname> をスローしていました。
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples"><!-- {{{ -->
&reftitle.examples;
<example xml:id="random-int.example.basic"><!-- {{{ -->
<title><function>random_int</function> の例</title>
<programlisting role="php">
<![CDATA[
<?php
var_dump(random_int(100, 999));
var_dump(random_int(-1000, 0));
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
int(248)
int(-898)
]]>
</screen>
</example><!-- }}} -->
</refsect1><!-- }}} -->
<refsect1 role="seealso"><!-- {{{ -->
&reftitle.seealso;
<simplelist>
<member><methodname>Random\Randomizer::getInt</methodname></member>
<member><function>random_bytes</function></member>
</simplelist>
</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
-->