PHP Doku:: Constructs an enumeger object type - splenum.construct.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzSonstige GrunderweiterungenSPL Type HandlingThe SplEnum classSplEnum::__construct

Ein Service von Reinhard Neidl - Webprogrammierung.

The SplEnum class

<<The SplEnum class

The SplBool class>>

SplEnum::__construct

(PECL spl_types >= 0.1.0)

SplEnum::__constructConstructs an enumeger object type

Beschreibung

SplEnum::__construct() ( void )

This constructor is used to set the value and the strictness of the "Enum" Object.

Parameter-Liste

input

The input parameter accepts an integer and will throw an UnexpectedValueException if anything else is passed.

strict

A boolean variable to indicate wether the object's strictness should be set or not.

Rückgabewerte

Es wird kein Wert zurückgegeben.

Beispiele

Beispiel #1 SplEnum::__construct() example

<?php

class EnumOne extends SplEnum
{
    const 
__default 1;
}

class 
EnumTwo extends SplEnum
{
    const 
__default 2;
}

class 
EnumThree extends SplEnum
{
    const 
__default 3;
}

$enumOne   = new EnumOne();
$enumTwo   = new EnumTwo();
$enumThree = new EnumThree();


echo 
'Enum one  : ' $enumOne   PHP_EOL;
echo 
'Enum two  : ' $enumTwo   PHP_EOL;
echo 
'Enum three: ' $enumThree PHP_EOL;
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Enum one  : 1
Enum two  : 2
Enum three: 3


Ein BenutzerBeitrag:
- Beiträge aktualisieren...
No Such Alias
30.07.2010 18:11
Here's a clearer example usage in case anyone else finds the
current documentation confusing (as I did).

<?php
class Fruit extends SplEnum
{
 
// If no value is given during object construction this value is used
 
const __default = 1;
 
// Our enum values
 
const APPLE     = 1;
  const
ORANGE    = 2;
}

$myApple   = new Fruit();
$myOrange  = new Fruit(Fruit::ORANGE);
$fail      = 1;

function
eat(Fruit $aFruit)
{
  if (
Fruit::APPLE == $aFruit) {
    echo
"Eating an apple.\n";
  } elseif (
Fruit::ORANGE == $aFruit) {
    echo
"Eating an orange.\n";
  }
}

eat($myApple);  // Eating an apple.
eat($myOrange); // Eating an orange.

eat($fail); // PHP Catchable fatal error:  Argument 1 passed to eat() must be an instance of Fruit, integer given

?>



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)