Metody

__autoload()

Jest to globalna funkcja, która wywoływana jest gdy tworzymy obiekt klasy która jest niedostępna/nieistnieje.

Funkcja ta pobiera jeden argument - nazwę klasy której obiekt chcemy stworzyć.

Gdy tworzysz obiekt PHP wywołuje funkcję __autoload() a następnie próbuje stworzyć obiekt raz jeszcze.

Przykład :


<?php
function __autoload($klasa){
    if( is_file('/klasy/'.$klasa.'.php') ){
        require_once '/klasy/'.$klasa.'.php';
    }
}
?>

Załóżmy że stworzyliśmy tablicę w której przechowywane są dostępne klasy, ponadto wszystkie znajdują sie w katalogu - klasy. Tak więc sprawdzamy czy klasa której obiekt chcemy stworzyć jest dostępna, w wyniku powodzenia, dołączamy plik w którym znajduje się definicja klasy.

__set()

Funkcja __set() jest uruchamiana, podczas dynamicznego tworzenia własności klas.Stworzone własnoći zawsze uzyskują dostęp publiczny.

Pobiera ona dwa argumenty - nazwę zmienne i wartość.

Możemy nadpisać metodę __set()


<?php
class Nieprzyjazna{
public function __set($zmienna,$wartosc){
    echo 'jestem nieprzyjazna nie mam własciwosci 
         '.$zmienna. 'tak wiec nie wpisze  wartosci 
         '.$wartosc;
    }
}
$obiekt = new Nieprzyjazna;
$obiekt->nowa = 10;

?>

__get()

Funkcja get uruchamiana jest gdy chcemy wypisać właściowść która nie ma ustawnionej wartości.

Pobiera jeden argument - nazwę właściwości