Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zasady panujące na forum News

1. Posty w tym forum są poddawane moderacji więc nie dodawaj ich kilka razy.
2. Akceptujemy tylko wartościowe wiadomości o php lub pochodnych
3. Publikacja newsa na wortalu po moderacji oscyluje w granicach 30min
4. Wstawiane grafiki powinny mieć maksymalną szerokość 357px

Zapraszamy do uzupełniania wortalu o ciekawe informacje :)

 
Reply to this topicStart new topic
> [phponion] Enumeratory w PHP 8.1
Szado
post 27.06.2021, 09:33:19
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 4
Dołączył: 30.05.2017

Ostrzeżenie: (0%)
-----


Premiera PHP 8.1 zaplanowana jest na 25 listopada 2021 roku. Typ enumeracyjny, popularny ENUM to jedna z czekających nas nowości. Jakie problemy rozwiąże ENUM i jak będzie wyglądała jego implementacja? Sprawdźmy!

https://youtu.be/TI8Jo3Zh0kQ

Przykłady kodu użyte w materiale:

(kodem można pobawić się tu: https://3v4l.org/#focus=git.master)

Pure ENUM:
  1. <?php
  2. enum Fruit {
  3. case Apple;
  4. case Banana;
  5. case Orange;
  6. }
  7.  
  8. $fruit = Fruit::Orange;
  9. if ($fruit === Fruit::Banana) {
  10. echo 'no na pewno banan';
  11. }
  12.  
  13. // wyjątek - Fruit::Apple to obiekt klasy Fruit
  14. echo Fruit::Apple;


Backed ENUM:
  1. <?php
  2. enum Fruit: string {
  3. case Apple = 'jabłko';
  4. case Banana = 'banan';
  5. case Orange = 'pomarańcza';
  6.  
  7. // a tu dodatkowo metoda:
  8. public function canMakeJuice(): bool
  9. {
  10. return $this !== self::Banana;
  11. }
  12. }
  13.  
  14. echo Fruit::Apple->value; // jabłko
  15. var_dump(Fruit::Banana->canMakeJuice()); // false
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.03.2024 - 06:15