PHP マニュアル
前のページ | 第 6章Windows システムへのインストール | 次のページ

# 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 時点): BCMath、 Caledar、 COM、 Ctype、 FTP、 MySQL、 ODBC、 Overload、 PCRE、 Session、 Tokenizer、 WDDX、 XML そして Zlib

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

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

- extension_dir を拡張モジュール があるフォルダに変更する必要があります。 `php_*.dll`ファイルをそこに置いてください。 例えば次のようになります。

      extension_dir = c:\php\extensions

- `php.ini` には、多くの拡張モジュール名がコメントアウトされた状態で記載済みです。 それらの拡張モジュールを有効にするには、`php.ini` 上の `extension=php_*.dll` の行をアンコメント（行頭の ; を削除する）してください。

  例 6-8. Windows 版の PHP で Bzip2 拡張モジュールを有効にする

      // この行を以下から
      ;extension=php_bz2.dll

      // このように変更する
      extension=php_bz2.dll

- 拡張モジュールによっては、その動作に外部 DLL が必要な場合があります。 配布パッケージには、一部の外部 DLL がバンドルされています。 PHP 4 の場合は `C:\php\dlls\`を、 PHP 5 の場合は親フォルダを参照ください。ただし、必要な外部 DLL がバンドルされていないモジュールもあり、たとえば、Oracle モジュール (`php_oci8.dll`) は、非バンドルの DLL を必要とします。 PHP 4 をインストールする場合、バンドルされた DLL を `C:\php\dlls` からメインのフォルダ `C:\php` へコピーしてください。 また、忘れずに `C:\php` をシステムパスに 追加してください（その方法は、別途 FAQ に記載されています。）

- これらの DLLs の中には、PHP の配布ファイルに含まれていないものもあります。 詳細は、それぞれの拡張モジュールのドキュメントを参照ください。 また、PECL についての詳細は、マニュアルの PECL 拡張モジュールのインストール という節を参照ください。多くの PHP 拡張モジュールが PECL に移行しつつあり、これらは 個別にダウンロード しなければなりません。

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

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

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

拡張モジュール | 説明 | 備考
--- | --- | ---
php_bz2.dll | bzip2 圧縮関数 |
php_calendar.dll | カレンダー 関数 | PHP 4.0.3 以降ビルトイン
php_cpdf.dll | ClibPDF 関数 |
php_crack.dll | Crack 関数 |
php_ctype.dll | 文字型(ctype) 関数 | PHP 4.3.0 以降ビルトイン
php_curl.dll | CURL, Client URL Library 関数 | `libeay32.dll` および `ssleay32.dll` が必要 （バンドル）
php_cybercash.dll | Cybercash 支払関数 | PHP <= 4.2.0
php_db.dll | DBM 関数 | 非推奨の関数。DBA を代わりに使用のこと (`php_dba.dll`)
php_dba.dll | DBA: (dbm 型の) データベース・アブストラクション レイヤー関数 |
php_dbase.dll | dBase 関数 |
php_dbx.dll | dbx 関数 |
php_domxml.dll | DOM XML 関数 | PHP <= 4.2.0 では `libxml2.dll` が必要 （バンドル）, PHP >= 4.3.0 では `iconv.dll` が必要 （バンドル）
php_dotnet.dll | .NET 関数 | PHP <= 4.1.1
php_exif.dll | EXIF 関数 | php_mbstring.dll。`php.ini` で `php_exif.dll` は `php_mbstring.dll` の後で読み込まれる必要がある。
php_fbsql.dll | FrontBase 関数 | PHP <= 4.2.0
php_fdf.dll | FDF: Forms Data Format 関数 | `fdftk.dll` が必要 （バンドル）
php_filepro.dll | filePro 関数 | 読み込みのみ
php_ftp.dll | FTP 関数 | PHP 4.0.3 以降ビルトイン
php_gd.dll | イメージ 関数 (GD ライブラリ) | PHP 4.3.2以降で削除。トゥルーカラー関数は GD1 では使用できない。 代わりに `php_gd2.dll` を使用のこと。
php_gd2.dll | イメージ 関数 (GD2 ライブラリ) | GD2
php_gettext.dll | Gettext 関数 | PHP <= 4.2.0 では `gnu_gettext.dll` が必要 （バンドル）, PHP >= 4.2.3 では `libintl-1.dll` および `iconv.dll` が必要（バンドル）
php_hyperwave.dll | HyperWave 関数 |
php_iconv.dll | ICONV 関数 | `iconv-1.3.dll` が必要（バンドル）、 PHP >=4.2.1 `iconv.dll`
php_ifx.dll | Informix 関数 | Informix ライブラリが必要
php_iisfunc.dll | IIS management 関数 |
php_imap.dll | IMAP,POP3,NNTP 関数 |
php_ingres.dll | Ingres II 関数 | Ingres II ライブラリが必要
php_interbase.dll | InterBase 関数 | `gds32.dll` が必要（バンドル）
php_java.dll | Java 関数 | PHP <= 4.0.6 で `jvm.dll` が必要（バンドル）
php_ldap.dll | LDAP 関数 | PHP <= 4.2.0 では `libsasl.dll` が必要（バンドル）, PHP >= 4.3.0 では `libeay32.dll` と `ssleay32.dll` が必要（バンドル）
php_mbstring.dll | マルチバイト文字列 関数 |
php_mcrypt.dll | Mcrypt 暗号化 関数 | `libmcrypt.dll` が必要
php_mhash.dll | Mhash 関数 | PHP >= 4.3.0 で `libmhash.dll` が必要（バンドル）
php_mime_magic.dll | Mimetype 関数 | `magic.mime` が必要（バンドル）
php_ming.dll | Ming 関数 (Flash 用) |
php_msql.dll | mSQL 関数 | `msql.dll` が必要（バンドル）
php_mssql.dll | MSSQL 関数 | `ntwdblib.dll` が必要（バンドル）
php_mysql.dll | MySQL 関数 | PHP >= 5.0.0。`libmysql.dll` が必要（バンドル）
php_mysqli.dll | MySQLi 関数 | PHP >= 5.0.0。`libmysql.dll` (PHP <= 5.0.2 では `libmysqli.dll`) が必要（バンドル）
php_oci8.dll | Oracle 8 関数 | Oracle 8.1+ クライアントライブラリが必要
php_openssl.dll | OpenSSL 関数 | `libeay32.dll` が必要（バンドル）
php_oracle.dll | Oracle 関数 | Oracle 7 クライアントライブラリが必要
php_overload.dll | オブジェクトオーバーロード 関数 | PHP 4.3.0 以降ビルトイン
php_pdf.dll | PDF 関数 |
php_pgsql.dll | PostgreSQL 関数 |
php_printer.dll | プリンタ 関数 |
php_shmop.dll | 共有メモリ 関数 (shmop) |
php_snmp.dll | SNMP 関数 | NT のみ
php_soap.dll | SOAP 関数 | PHP >= 5.0.0
php_sockets.dll | ソケット 関数 |
php_sybase_ct.dll | Sybase 関数 | Sybase クライアントライブラリが必要
php_tidy.dll | Tidy 関数 | PHP >= 5.0.0
php_tokenizer.dll | Tokenizer 関数 | PHP 4.3.0 以降ビルトイン
php_w32api.dll | W32api 関数 |
php_xmlrpc.dll | XML-RPC 関数 | PHP >= 4.2.1 で `iconv.dll` が必要（バンドル）
php_xslt.dll | XSLT 関数 | PHP <= 4.2.0 では `sablot.dll` と `expat.dll` が必要（バンドル）。 PHP >= 4.2.1 では `sablot.dll`, `expat.dll` および `iconv.dll` が必要（バンドル）
php_yaz.dll | YAZ 関数 | `yaz.dll` が必要（バンドル）
php_zip.dll | Zip ファイル 関数 | 読込のみ
php_zlib.dll | ZLib 圧縮関数 | PHP 4.3.0 以降ビルトイン

前のページ | ホーム | 次のページ
ソースからのビルド | 上に戻る | PECL 拡張モジュールのインストール