<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/language.enumerations.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ja',
  ),
  'this' => 
  array (
    0 => 'language.enumerations.overview.php',
    1 => '列挙型の概要',
    2 => '列挙型の概要',
  ),
  'up' => 
  array (
    0 => 'language.enumerations.php',
    1 => '列挙型(Enum)',
  ),
  'prev' => 
  array (
    0 => 'language.enumerations.php',
    1 => '列挙型(Enum)',
  ),
  'next' => 
  array (
    0 => 'language.enumerations.basics.php',
    1 => '列挙型の基礎',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ja',
    'path' => 'language/enumerations.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="language.enumerations.overview" class="sect1">
   <h2 class="title">列挙型の概要</h2>
   <p class="verinfo">(PHP 8 &gt;= 8.1.0)</p>

   <p class="para">
    列挙型(Enumerations) または Enum を使うと、
    開発者は取りうる値を限定した独自の型を定義できます。
    これによって、&quot;不正な状態を表現できなくなる&quot; ので、
    ドメインモデルを定義する時に特に役立ちます。
   </p>

   <p class="para">
    列挙型は、多くのプログラミング言語に備わっており、
    様々な異なる機能があります。
    PHP では、列挙型は特別な種類のオブジェクトです。
    列挙型そのものはクラスですし、そこで定義される case は全て、
    そのクラスのインスタンスです。
    これは、列挙型で定義される case は有効なオブジェクトであり、
    型チェックを含む、オブジェクトが使えるあらゆる場所で使えるということです。
   </p>

   <p class="para">
    列挙型のもっとも有名な例は、組み込みの論理型(boolean) です。
    これは、有効な値 <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> と <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> を持つ列挙型です。
    列挙型によって、開発者は任意の値の一覧を、
    安定した形で定義できるようになります。
   </p>
  </div><?php manual_footer($setup); ?>