Windows 用 PHP 拡張モジュール

Windows に PHP を インストールし、Web サーバの設定ができたら、 次は PHP 拡張モジュールを使うための設定です。 php.ini を使って PHP が起動時にロードする拡張モジュールを設定することができます。 もしくは、スクリプトの中で dl() 関数を使用することにより、 拡張モジュールを動的にロードすることも可能です。

PHP 拡張モジュールの DLL には、ファイル名の前に 'php_' が付いています。

Windows 版の PHP には、多くの拡張モジュールが 組み込まれています。これらの関数を使用する際には、 追加の DLL ファイルや extension ディレクティブの設定は不要です。 追加の DLL が必要となる (あるいはかつて必要だった) 拡張モジュールについては、 Windows 版 PHP 拡張モジュール の表にまとめてあります。以下にあげられている拡張モジュールは、すでに PHP に組み込まれています。

PHP 4 (PHP 4.3.11 時点): BCMathCaledarCOMCtypeFTPMySQLODBCOverloadPCRESessionTokenizerWDDXXML そして Zlib

PHP 5 (PHP 5.0.4 時点) では、さらに以下が組み込まれています。 DOMLibXMLIconvSimpleXMLSPL そして SQLite。 また、以下は組み込まれなくなりました。 MySQL および Overload

PHP が拡張モジュールを探すデフォルトの場所は PHP 4 の場合 C:\php4\extensions、 PHP 5 の場合 C:\php5 です。 変更するには php.ini ファイルを編集してください。

注意: PHP をサーバモジュールとして実行している場合は、Webサーバを再起動しないと、 php.ini の設定が反映されません。Web サーバの再起動を忘れずに行ってください。

以下の表は、使用可能な拡張モジュールと それらの実行に別途必要な DLL のリストです。

表 6-1. PHP 拡張モジュール

拡張モジュール説明備考
php_bz2.dllbzip2 圧縮関数 
php_calendar.dllカレンダー 関数PHP 4.0.3 以降ビルトイン
php_cpdf.dllClibPDF 関数 
php_crack.dllCrack 関数 
php_ctype.dll文字型(ctype) 関数PHP 4.3.0 以降ビルトイン
php_curl.dllCURL, Client URL Library 関数libeay32.dll および ssleay32.dll が必要 (バンドル)
php_cybercash.dllCybercash 支払関数PHP <= 4.2.0
php_db.dllDBM 関数非推奨の関数。DBA を代わりに使用のこと (php_dba.dll)
php_dba.dllDBA: (dbm 型の) データベース・アブストラクション レイヤー関数 
php_dbase.dlldBase 関数 
php_dbx.dlldbx 関数 
php_domxml.dllDOM XML 関数 PHP <= 4.2.0 では libxml2.dll が必要 (バンドル), PHP >= 4.3.0 では iconv.dll が必要 (バンドル)
php_dotnet.dll.NET 関数PHP <= 4.1.1
php_exif.dllEXIF 関数 php_mbstring.dllphp.iniphp_exif.dllphp_mbstring.dll の後で読み込まれる必要がある。
php_fbsql.dllFrontBase 関数PHP <= 4.2.0
php_fdf.dllFDF: Forms Data Format 関数fdftk.dll が必要 (バンドル)
php_filepro.dllfilePro 関数読み込みのみ
php_ftp.dllFTP 関数PHP 4.0.3 以降ビルトイン
php_gd.dllイメージ 関数 (GD ライブラリ) PHP 4.3.2以降で削除。トゥルーカラー関数は GD1 では使用できない。 代わりに php_gd2.dll を使用のこと。
php_gd2.dllイメージ 関数 (GD2 ライブラリ)GD2
php_gettext.dllGettext 関数 PHP <= 4.2.0 では gnu_gettext.dll が必要 (バンドル), PHP >= 4.2.3 では libintl-1.dll および iconv.dll が必要(バンドル)
php_hyperwave.dllHyperWave 関数 
php_iconv.dllICONV 関数iconv-1.3.dll が必要(バンドル)、 PHP >=4.2.1 iconv.dll
php_ifx.dllInformix 関数Informix ライブラリが必要
php_iisfunc.dllIIS management 関数 
php_imap.dllIMAP,POP3,NNTP 関数 
php_ingres.dllIngres II 関数Ingres II ライブラリが必要
php_interbase.dllInterBase 関数gds32.dll が必要(バンドル)
php_java.dllJava 関数PHP <= 4.0.6 で jvm.dll が必要(バンドル)
php_ldap.dllLDAP 関数 PHP <= 4.2.0 では libsasl.dll が必要(バンドル), PHP >= 4.3.0 では libeay32.dllssleay32.dll が必要(バンドル)
php_mbstring.dllマルチバイト文字列 関数 
php_mcrypt.dllMcrypt 暗号化 関数libmcrypt.dll が必要
php_mhash.dllMhash 関数PHP >= 4.3.0 で libmhash.dll が必要(バンドル)
php_mime_magic.dllMimetype 関数magic.mime が必要(バンドル)
php_ming.dllMing 関数 (Flash 用) 
php_msql.dllmSQL 関数msql.dll が必要(バンドル)
php_mssql.dllMSSQL 関数ntwdblib.dll が必要(バンドル)
php_mysql.dllMySQL 関数PHP >= 5.0.0。libmysql.dll が必要(バンドル)
php_mysqli.dllMySQLi 関数PHP >= 5.0.0。libmysql.dll (PHP <= 5.0.2 では libmysqli.dll) が必要(バンドル)
php_oci8.dllOracle 8 関数Oracle 8.1+ クライアントライブラリが必要
php_openssl.dllOpenSSL 関数libeay32.dll が必要(バンドル)
php_oracle.dllOracle 関数Oracle 7 クライアントライブラリが必要
php_overload.dllオブジェクトオーバーロード 関数PHP 4.3.0 以降ビルトイン
php_pdf.dllPDF 関数 
php_pgsql.dllPostgreSQL 関数 
php_printer.dllプリンタ 関数 
php_shmop.dll共有メモリ 関数 (shmop) 
php_snmp.dllSNMP 関数NT のみ
php_soap.dllSOAP 関数PHP >= 5.0.0
php_sockets.dllソケット 関数 
php_sybase_ct.dllSybase 関数Sybase クライアントライブラリが必要
php_tidy.dllTidy 関数PHP >= 5.0.0
php_tokenizer.dllTokenizer 関数PHP 4.3.0 以降ビルトイン
php_w32api.dllW32api 関数 
php_xmlrpc.dllXML-RPC 関数PHP >= 4.2.1 で iconv.dll が必要(バンドル)
php_xslt.dllXSLT 関数 PHP <= 4.2.0 では sablot.dllexpat.dll が必要(バンドル)。 PHP >= 4.2.1 では sablot.dll, expat.dll および iconv.dll が必要(バンドル)
php_yaz.dllYAZ 関数yaz.dll が必要(バンドル)
php_zip.dllZip ファイル 関数読込のみ
php_zlib.dllZLib 圧縮関数PHP 4.3.0 以降ビルトイン