Betölti azt a PHP kiterjesztést, amit a library paraméterben adtál meg. A library paraméter a betöltendő kiterjesztésnek csak a fájlneve, ami függ a platformtól is. Például a sockets kiterjesztés (ha megosztott modulként volt fordítva, ami nem alapértelmezett) Unix platformokon sockets.so, míg Windows-on php_sockets.dll.
Siker esetén TRUE értékkel tér vissza, ellenkező esetben FALSE értéket ad. Ha a modulbetöltés nem lehetséges (lásd a megjegyzést) vagy nem engedélyezett (a enable_dl ki van kapcsolva vagy a safe mode be van kapcsolva a php.ini-ben), akkor egy E_ERROR szintű hiba keletkezik és a szkript futása megszakad. Ha a dl() függvény végrehajtása sikertelen mert a megadott könyvtárat nem lehet betölteni, a függvény FALSE-ot ad vissza és dob egy E_WARNING szintű hibát.
Hogy egy kiterjesztésről megtudd, hogy be van-e töltve vagy sem, használd az extension_loaded() függvényt. Ez működik a beépített és a dinamikusan betöltött kiterjesztésekre is (mind a php.ini-vel mind a dl() függvénnyel betöltöttekre igaz).
A dl() függvény használata a PHP 5-től kezdve ellenjavallt. Helyette használd a kiterjesztés betöltő direktívák módszerét.
A könyvtár ahonnan a kiterjesztést be lehet tölteni, platformtól függő:
Windows - Ha nincs explicite megadva a php.ini-ben, akkor a kiterjesztés a c:\php4\extensions\ könyvtárból töltödik be.
Unix - Ha nincs explicite megadva a php.ini-ben, az alapértelmezett kiterjesztés könyvtár függ a következőktől:
a PHP --enable-debug-gal lett-e fordítva vagy sem
a PHP (a kisérleti jellegű) ZTS (Zend Thread Safety) támogatással lett-e fordítva vagy sem
az aktuális belső ZEND_MODULE_API_NO (Zend belső API modul szám, ami alapjában az a dátum, amikor az API modulban nagyobb változtatás történt, pl. 20010901)
Megjegyzés: A dl() nem támogatott a többszálas webszervereken. Használd az extensions utasítást a php.ini-ben, amikor ilyen környezetben dolgozol. A CGI és a CLI verziók nem érintettek!
Megjegyzés: A dl() Unix platformokon különbséget tesz kis- és nagybetűk között.
Megjegyzés: Ez a függvény nem használható, ha a safe mode be van kapcsolva.
Lásd még a kiterjesztés betöltő direktívákat és az extension_loaded() függvényt.