Interfejsy a typy mixed
Założenie: Pokażemy, jak wykorzystać typ mixed
w interfejsie PHP, aby metoda mogła przyjmować lub zwracać wartości różnych typów.
Krok po kroku:
- Definicja interfejsu z metodą przyjmującą typ
mixed
:interface MyInterface { public function processData(mixed $data): mixed; }
Ten fragment kodu definiuje interfejs
MyInterface
z metodąprocessData
. Parametr$data
i wartość zwracana mają typmixed
, co oznacza, że mogą być dowolnego typu. - Implementacja interfejsu:
class MyClass implements MyInterface { public function processData(mixed $data): mixed { if (is_string($data)) { return strtoupper($data); } elseif (is_numeric($data)) { return $data * 2; } else { return "Nieznany typ danych"; } } }
Klasa
MyClass
implementuje interfejsMyInterface
. MetodaprocessData
obsługuje różne typy danych. - Użycie implementacji:
$obj = new MyClass(); echo $obj->processData("hello"); // Wyświetli: HELLO echo $obj->processData(10); // Wyświetli: 20 echo $obj->processData(true); // Wyświetli: Nieznany typ danych
Ten kod pokazuje, jak używać zaimplementowanej metody z różnymi typami danych.
Ten przykład pokazuje podstawowe zastosowanie typu mixed
w interfejsach. Pamiętaj, że nadużywanie typu mixed
może prowadzić do mniej przewidywalnego kodu. Dalsza nauka o typach w PHP pozwoli Ci pisać bardziej bezpieczny i łatwiejszy w utrzymaniu kod.