OOP v PHP: Autoloading

15. února 2006

Velmi užitečnou funkcí je funkce __autoload(). Umožňuje takzvané automatické nahrávání tříd a je volána, jestliže chcete užít třídu, která ještě nebyla definována.

Voláním funkce __autoload() je enginem dána poslední šance k nahrání třídy před tím, než server oznámí chybu. Příklad:

<?php 
function __autoload($jmeno_tridy { 
  require_once $jmeno_tridy . '.php'; 
} 

$objekt = new Trida1(); 
$objekt2 = new Trida2(); 
?>

Skript bude hledat příslušné definice třídy v souborech Trida1.php a Trida2.php.

Pozn. red.: Zdůrazňujeme, že tento text se týká PHP 5.

Předchozí článek OOP v PHP: Speciální metody
Štítky: oop-php

Mohlo by vás také zajímat

Nejnovější

2 komentářů

  1. Martin

    Srp 10, 2012 v 13:30

    Drobna chybka v 
    function __autoload($jmeno_tridy <- chybi ukoncovaci zavorka

    Odpovědět
  2. David Pšondr

    Lis 2, 2013 v 13:12

    PHP obsahuje chybu, při které se __autoload() nevykoná – jedná se o případ, kdy zavoláte statickou metodu třídy, které ještě nebyla nalezena deklarace (v příkladu nahoře by byla umístěna v nějakém souboru). Namísto __autoload() se tak používá funkce spl_autoload_register().

    Odpovědět

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *