<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.random.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ja',
  ),
  'this' => 
  array (
    0 => 'class.random-engine.php',
    1 => 'Random\\Engine',
    2 => 'Random\\Engine インターフェイス',
  ),
  'up' => 
  array (
    0 => 'book.random.php',
    1 => 'Random',
  ),
  'prev' => 
  array (
    0 => 'enum.random-intervalboundary.php',
    1 => 'Random\\IntervalBoundary',
  ),
  'next' => 
  array (
    0 => 'random-engine.generate.php',
    1 => 'Random\\Engine::generate',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ja',
    'path' => 'reference/random/random.engine.xml',
  ),
  'history' => 
  array (
  ),
  'extra_header_links' => 
  array (
    'rel' => 'alternate',
    'href' => '/manual/en/feeds/class.random-engine.atom',
    'type' => 'application/atom+xml',
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="class.random-engine" class="reference">
 <h1 class="title">Random\Engine インターフェイス</h1>
 

 <div class="partintro"><p class="verinfo">(PHP 8 &gt;= 8.2.0)</p>


  <div class="section" id="random-engine.intro">
   <h2 class="title">はじめに</h2>
   <p class="para">
    <span class="classname"><strong class="classname">Random\Engine</strong></span>
    は、ランダムな値の低レベルなソースを提供します。
    ここから返されたランダムな値は、
    高レベルAPIで操作することで消費されます。
    <span class="classname"><strong class="classname">Random\Engine</strong></span> インターフェイスを使うと、
    ランダムな値を生成するためのアルゴリズムを切り替えることができます。
    何故切り替えるのかというと、
    それぞれのアルゴリズムは特定のユースケースに応じて、
    異なるトレードオフの特性を持つからです。
    とても高速に値を生成するものの、
    生成するランダムな値の品質は低いアルゴリズムもあれば、
    それよりは低速ですが、よりよいランダムな値を生成するアルゴリズムもあります。
    さらに、<span class="classname"><a href="class.random-engine-secure.php" class="classname">Random\Engine\Secure</a></span> が提供する、
    暗号学的にセキュアな、ランダムな値を生成するものまであります。
   </p>

   <p class="para">
    PHP は 異なるユースケースに対応した、
    複数の <span class="classname"><strong class="classname">Random\Engine</strong></span> を提供します。
    とても高速なパフォーマンスを追求したり、
    再現可能なシーケンスをアプリケーション側で必須としない限り、
    <abbr title="Cryptographically Secure PseudoRandom Number Generator">CSPRNG</abbr> をバックエンドにした
    <span class="classname"><a href="class.random-engine-secure.php" class="classname">Random\Engine\Secure</a></span> を、
    デフォルトとして選択することを推奨します。
   </p>
  </div>


  <div class="section" id="random-engine.synopsis">
   <h2 class="title">インターフェイス概要</h2>


   <div class="classsynopsis"><div class="classsynopsisinfo">
    <span class="modifier">namespace</span> <strong class="package">Random</strong>;</div>

    <div class="classsynopsisinfo">
     
      <span class="modifier">interface</span> <strong class="interfacename"><strong class="interfacename">Engine</strong></strong> {</div>

     <div class="classsynopsisinfo classsynopsisinfo_comment">/* メソッド */</div>
     <div class="methodsynopsis dc-description">
   <span class="modifier">public</span> <span class="methodname"><a href="random-engine.generate.php" class="methodname">generate</a></span>(): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>

    }
   </div>


  </div>

 </div>

 






<h2>目次</h2><ul class="chunklist chunklist_reference"><li><a href="random-engine.generate.php">Random\Engine::generate</a> — ランダムな値を生成する</li></ul>
</div>
<?php manual_footer($setup); ?>