Zend::loadClass($class, $dirs)
ładuje plik PHP, a następnie
sprawdza czy klasa istnieje.
<?php Zend::loadClass('Container_Tree', array('/home/production/mylib', (/home/production/myapp'))); ?>
Bo skonwertowaniu zmiennej $class
na hierarchię katalogów
poprzez zamianę podkreślników na separatory katalogów, uzyskana
hierarchia zostanie dodana do każdej części w zmiennej $dirs
Jeśli zmienna $dirs
ma wartość null
, spowoduje
to uzyskanie tylko pojedynczej hierarchii.
Na przykład, Container_Tree
stanie się Container/Tree.php
.
Jeśli plik /home/production/mylib/Container/Tree.php
istnieje,
wtedy będzie on załadowany.
Jeśli nie, wtedy zostanie załadowany plik /home/production/myapp/Container/Tree.php
jeśli istnieje.
W przeciwnym razie, plik Container/Tree.php
zostanie
wyszukany w katalogach ze zmiennej PHP include path.
Jeśli zmienna $dirs
jest łańcuchem znaków lub tablicą,
katalogi zostaną przesukane w takiej kolejności w jakiej zostały
zdefiniowane, a pierwszy pasujący plik zostanie dołączony.
Jeśli plik nie istnieje w katalogach podanych w zmiennej
$dirs
, wtedy w wyrażeniu include
zostaną użyte
katalogi ze zmiennej PHP include_path (np. include 'Tree.php'
).
Jeśli plik nie zostanie znaleziony lub klasa po załadowaniu pliku nie
istnieje, zostanie wyrzucony wyjątek Zend_Exception
.
Metoda Zend::loadFile()
jest używana do ładowania, więc
nazwa klasy może jedynie zawierać znaki alfanumeryczne, myślnik ('-'),
podkreślnik ('_'), oraz kropkę ('.').