__autoload
Het is vaak heel irritant en tijdrovend om steeds allemaal classes te moeten includen in je scripts. En in elk script weer een paar anderen. In PHP 5 is hier een oplossing voor: __autoload. In de functie __autoload(), die niet gedefinieerd wordt binnen een klasse maar juist in de procedural code, kun je instellen hoe alle gebruikte klasses automatisch worden geinclude. Het is heel simpel. Hier een voorbeeld van PHP.net:
2
3
4
5
6
7
8
function __autoload($class_name) {
require_once $class_name . '.php';
}
$obj = new MyClass1();
$obj2 = new MyClass2();
?>
In dit geval wordt MyClass1 gebruikt en MyClass2. Automatisch worden hiervoor MyClass1.php en MyClass2.php ingeladen. Er zijn dus geen overbodige includes en het kost totaal geen tijd. Zoals in Java moeten in dit geval de klasse-namen gelijk zijn aan de bestandsnamen.
Inhoudsopgave
- Inleiding
- __construct
- __destruct
- __sleep & __wakeup
- __toString
- __clone
- __autoload
- __set_state
- __get, __set, __call, __isset, __unset
- Links