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
MyInterfacez metodąprocessData. Parametr$datai 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
MyClassimplementuje interfejsMyInterface. MetodaprocessDataobsł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 danychTen 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.