Uppräkningar: Skillnad mellan sidversioner
Hoppa till navigering
Hoppa till sök
Admin (diskussion | bidrag) |
Admin (diskussion | bidrag) |
||
(4 mellanliggande sidversioner av samma användare visas inte) | |||
Rad 5: | Rad 5: | ||
Uppräkningstyper är ett begränsande lager ovanpå klasser och klasskonstanter, avsett att tillhandahålla ett sätt att definiera en sluten uppsättning av möjliga värden för en typ. | Uppräkningstyper är ett begränsande lager ovanpå klasser och klasskonstanter, avsett att tillhandahålla ett sätt att definiera en sluten uppsättning av möjliga värden för en typ. | ||
< | <code> | ||
enum Suit | enum Suit | ||
{ | { | ||
Rad 20: | Rad 20: | ||
do_stuff(Suit::Spades); | do_stuff(Suit::Spades); | ||
</ | </code> | ||
För en fullständig diskussion, se kapitlet om Uppräkningstyper. | För en fullständig diskussion, se kapitlet om [[Uppräkningstyper]]. | ||
=== Typomvandling === | === Typomvandling === | ||
Om en uppräkningstyp omvandlas till ett objekt, modifieras den inte. Om en uppräkningstyp omvandlas till en array, skapas en array med en enda nyckel för namn (för rena uppräkningstyper) eller en array med både namn- och värdenycklar (för stödda uppräkningstyper). Alla andra typer av typomvandlingar kommer att resultera i ett fel. | Om en uppräkningstyp omvandlas till ett objekt, modifieras den inte. Om en uppräkningstyp omvandlas till en array, skapas en array med en enda nyckel för namn (för rena uppräkningstyper) eller en array med både namn- och värdenycklar (för stödda uppräkningstyper). Alla andra typer av typomvandlingar kommer att resultera i ett fel. | ||
[[PHP]] | |||
[[Språkreferens]] | |||
https://www.php.net/manual/en/language.types.enumerations.php | |||
[[Kategori:Php]] |
Nuvarande version från 13 augusti 2024 kl. 05.52
Uppräkningstyper
(PHP 8 >= 8.1.0)
Grundläggande Uppräkningstyper
Uppräkningstyper är ett begränsande lager ovanpå klasser och klasskonstanter, avsett att tillhandahålla ett sätt att definiera en sluten uppsättning av möjliga värden för en typ.
enum Suit
{
case Hearts;
case Diamonds;
case Clubs;
case Spades;
}
function do_stuff(Suit $s)
{
// ...
}
do_stuff(Suit::Spades);
För en fullständig diskussion, se kapitlet om Uppräkningstyper.
Typomvandling
Om en uppräkningstyp omvandlas till ett objekt, modifieras den inte. Om en uppräkningstyp omvandlas till en array, skapas en array med en enda nyckel för namn (för rena uppräkningstyper) eller en array med både namn- och värdenycklar (för stödda uppräkningstyper). Alla andra typer av typomvandlingar kommer att resultera i ett fel.
https://www.php.net/manual/en/language.types.enumerations.php