Kiterjesztések telepítése Windows-on

A webszerver és a PHP telepítése után valószínűleg néhány kiterjesztést is telepíteni akarsz a szolgáltatáskészlet bővítése érdekében. Azokat a kiterjesztéseket, amelyeket a PHP indulásakor szeretnél indítani, a php.ini-ben kell megadnod. A szkriptjeidben is betöltheted dinamikusan őket a dl() függvény segítségével.

A PHP kiterjesztések DLL-jei a php_ előtaggal vannak ellátva.

A PHP Windows-os verziójába sok kiterjesztés be van építve. Ez annyit jelent, hogy ezen kiterjesztések betöltéséhez nem szükségesek további DLL-ek és az extension direktíva használata. A Windows-os PHP kiterjesztések táblázat olyan kiterjesztéseket tartalmaz, amelyek működéséhez szükségesek, vagy általában szükségesek további PHP DLL állományok. Itt pedig egy lista a beépített kiterjesztésekről:

PHP 4-ben (PHP 4.3.11): BCMath, Caledar, COM, Ctype, FTP, MySQL, ODBC, Overload, PCRE, Session, Tokenizer, WDDX, XML és Zlib

PHP 5-ben (PHP 5.0.4) a következő kiterjesztésekkel bővül a lista: DOM, LibXML, Iconv, SimpleXML, SPL és SQLite. Az alábbiak viszont már nincsenek beépítve: MySQL and Overload.

Az alapértelmezett hely, ahol a PHP keresi a kiterjesztéseket, PHP 4 esetén a c:\php4\extensions, PHP 5 esetén pedig c:\php5. Hogy megváltoztasd ezt a beállítást, hogy megfeleljen a PHP konfigurációdnak, szerkeszd a php.ini fájlt:

Megjegyzés: Ha a PHP-nek a szervermodul verzióját futtatod, ne felejtsd el újraindítani a webszervert, hogy a php.ini-n végzett változások érvénybe lépjenek.

A következő táblázat leír néhány rendelkezésreálló kiterjesztést, és az esetlegesen igényelt DLL-eket.

Táblázat 6-1. PHP kiterjesztések

KiterjesztésLeírásMegjegyzések
php_bz2.dllbzip2 tömörítési függvényekNincs
php_calendar.dllNaptár függvényekBeépítve a PHP 4.0.3-tól
php_cpdf.dllClibPDF függvényekNincs
php_crack.dllCrack függvényekNincs
php_ctype.dllctype függvényekBeépítve a PHP 4.3.0-tól
php_curl.dllCURL, kliens URL könyvtári függvényekSzükséges: libeay32.dll, ssleay32.dll (a csomagban)
php_cybercash.dllCybercash fizetéssel kapcsolatos függvényekPHP <= 4.2.0
php_db.dllDBM függvényekEllenjavallt. Használd a DBA függvényeket helyettük (php_dba.dll).
php_dba.dllDBA: DataBase (dbm-stílusú) absztrakciós réteg függvényekNincs
php_dbase.dlldBase függvényekNincs
php_dbx.dlldbx függvények 
php_domxml.dllDOM XML függvények PHP <= 4.2.0 esetén szükséges: libxml2.dll (a csomagban) PHP >= 4.3.0 esetén szükséges: iconv.dll (a csomagban)
php_dotnet.dll.NET függvényekPHP <= 4.1.1
php_exif.dllEXIF függvények php_mbstring.dll. A php_exif.dll a php_mbstring.dll után kell betölteni a php.ini-ben.
php_fbsql.dllFrontBase függvényekPHP <= 4.2.0
php_fdf.dllFDF: Forms Data Format függvények.Szükséges: fdftk.dll (a csomagban)
php_filepro.dllfilePro függvényekCsak olvasási hozzáférés
php_ftp.dllFTP függvényekBeépítve a PHP 4.0.3-tól
php_gd.dllGD könyvtári kép-függvények A PHP 4.3.2-től eltávolítva. A truecolor függvények nem érhetők el a GD1-ben, helyettük használd a php_gd2.dll-t.
php_gd2.dllGD könyvtári kép-függvényekGD2
php_gettext.dllGettext függvények PHP <= 4.2.0 esetén szükséges: gnu_gettext.dll (a csomagban), PHP >= 4.2.3 esetén szükséges: libintl-1.dll, iconv.dll (a csomagban).
php_hyperwave.dllHyperWave függvényekNincs
php_iconv.dllICONV karakterkészlet-konverzióSzükséges: iconv-1.3.dll (a csomagban), PHP >=4.2.1 iconv.dll
php_ifx.dllInformix függvényekSzükséges: Informix könyvtárak
php_iisfunc.dllIIS menedzsment függvényekNincs
php_imap.dllIMAP POP3 és NNTP függvényekNincs
php_ingres.dllIngres II függvényekSzükséges: Ingres II könyvtárak
php_interbase.dllInterBase függvényekSzükséges: gds32.dll (a csomagban)
php_java.dllJava függvényekPHP <= 4.0.6 esetén szükséges: jvm.dll (a csomagban)
php_ldap.dllLDAP függvények PHP <= 4.2.0 esetén szükséges: libsasl.dll (a csomagban), PHP >= 4.3.0 esetén szükséges: libeay32.dll, ssleay32.dll (a csomagban)
php_mbstring.dllMulti-Byte String függvényekNincs
php_mcrypt.dllMcrypt tömörítő függvényekSzükséges: libmcrypt.dll
php_mhash.dllMhash függvényekPHP >= 4.3.0 esetén szükséges: libmhash.dll (a csomagban)
php_mime_magic.dllMimetype függvényekSzükséges: magic.mime (a csomagban)
php_ming.dllMing függvények Flash-hezNincs
php_msql.dllmSQL függvényekSzükséges: msql.dll (a csomagban)
php_mssql.dllMSSQL függvényekSzükséges: ntwdblib.dll (a csomagban)
php_mysql.dllMySQL függvényekPHP >= 5.0.0, szükséges: libmysql.dll (libmysqli.dll, PHP <= 5.0.2) (a csomagban)
php_mysqli.dllMySQLi függvényekPHP >= 5.0.0, szükséges: libmysqli.dll (a csomagban)
php_oci8.dllOracle 8 függvényekSzükséges: Oracle 8.1+ client libraries
php_openssl.dllOpenSSL függvényekSzükséges: libeay32.dll (a csomagban)
php_oracle.dllOracle függvényekSzükséges: Oracle 7 kliens könyvtárak
php_overload.dllObjektum túlterhelési függvényekBeépítve a PHP 4.3.0-tól
php_pdf.dllPDF függvényekNincs
php_pgsql.dllPostgreSQL függvényekNincs
php_printer.dllPrinter függvényekNincs
php_shmop.dllOsztott memória függvényekNincs
php_snmp.dllSNMP get and walk függvényekCsak NT esetén!
php_soap.dllSOAP függvényekPHP >= 5.0.0
php_sockets.dllSocket függvényekNincs
php_sybase_ct.dllSybase függvényekSzükséges: Sybase kliens könyvtárak
php_tidy.dllTidy függvényekPHP >= 5.0.0
php_tokenizer.dllTokenizer függvényekBeépítve a PHP 4.3.0-tól
php_w32api.dllW32api függvényekNincs
php_xmlrpc.dllXML-RPC függvényekPHP >= 4.2.1 esetén szükséges: iconv.dll (a csomagban)
php_xslt.dllXSLT függvények PHP <= 4.2.0 esetén szükséges: sablot.dll, expat.dll (a csomagban). PHP >= 4.2.1 esetén szükséges: sablot.dll, expat.dll, iconv.dll (a csomagban).
php_yaz.dllYAZ függvényekSzükséges: yaz.dll (a csomagban)
php_zip.dllZip fájl függvényekCsak olvasási hozzáférés
php_zlib.dllZLib tömörítő függvényekBeépítve a PHP 4.3.0-tól