Testowanie klas z metodami magicznymi

Założenie: Napiszemy klasę z metodami magicznymi __get() i __set() i przetestujemy dynamiczny dostęp do jej właściwości.

Krok po kroku:

  1. Krok 1: Definicja klasy z metodami magicznymi.
    
    data[$name] ?? null;
      }
    
      public function __set($name, $value) {
        $this->data[$name] = $value;
      }
    }
    ?>
    				

    Tworzymy klasę `User` z prywatną tablicą `$data` do przechowywania danych. Metoda `__get()` zwraca wartość właściwości, a `__set()` ustawia nową wartość. Operator `??` zapewnia zwrot `null` jeśli właściwość nie istnieje.

  2. Krok 2: Utworzenie obiektu klasy `User`.
    
    
    				

    Tworzymy nowy obiekt klasy `User`.

  3. Krok 3: Ustawienie i pobranie wartości właściwości za pomocą metod magicznych.
    
    name = "Jan Kowalski";
    echo $user->name; // Wyświetli: Jan Kowalski
    ?>
    				

    Ustawiamy wartość właściwości `name` za pomocą `$user->name = “Jan Kowalski”;` i pobieramy ją za pomocą `$user->name`. Metody `__get()` i `__set()` są wywoływane automatycznie.

  4. Krok 4: Testowanie brakującej właściwości.
    
    age; // Wyświetli: (nic, bo zwróci null)
    ?>
    				

    Próbujemy uzyskać dostęp do nieistniejącej właściwości `age`. Metoda `__get()` zwróci `null`.

Ten przykład pokazuje podstawowe zastosowanie metod magicznych __get() i __set() w PHP. Zachęcamy do dalszego zgłębiania tematu programowania obiektowego w PHP!

Dodaj komentarz 0

Your email address will not be published. Required fields are marked *