今日の人気記事

  1. 配列 異なる値を持つ要素を取得 - array_diff()、array_diff_assoc()
  2. 指定した文字列以降の文字列を取得 - strstr()、strchr() - mb_strstr()

拡張モジュールのディレクトリを設定 - Windows環境

当ページのリンクには広告が含まれています。

PHPにはさまざまな動的拡張モジュール(DLL、Dynamic Link Library)が用意されています。これらを利用するためには、拡張モジュールのディレクトリを設定する必要があります。それでは、設定方法をみていきましょう。

拡張モジュールのディレクトリを設定せずに、DLLをロードしようとすると……以下のように怒られます。

PHP Warning:  PHP Startup: Unable to load dynamic library 'C:\php\php_mbstring.d
ll' - 指定されたモジュールが見つかりません。

extension_dir - php.iniの設定

php.iniファイルに拡張モジュールのディレクトリ(extension_dir)の設定があらかじめ記述されているので、コメント(;)をはずすだけで、設定できます。

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
extension_dir = "ext" ← コメント(;)をはずします。

これで設定完了です。

設定の確認

phpinfo()で、適切に設定できているかを確認しましょう。phpinfo()はコマンドプロンプトやApache経由で確認できます。

phpinfo() - コマンドプロンプト

コマンドプロンプトを起動し、phpコマンドで確認します。以下のように設定したディレクトリ「ext」が表示されれば、適切に設定できています。※findstrコマンドで「extension_dir」という文字列を含む行を検索しています。linuxのgrepコマンドと似ていますね。

C:\>php -r phpinfo(); | findstr extension_dir
extension_dir => ext => ext

phpinfo() - Apache

コマンドプロンプトでの確認と異なり、Apache経由で設定を確認する場合はApacheを再起動し、設定変更を反映します。次にphpinfo()を確認します。それではみてみましょう。

dynamically-extension-dir
「Core」という項目に「extension_dir」があるので、「ext」となっていれば、適切に設定できています。

Windows の人気記事

  1. PHP + Apache 環境の構築
  2. Apache 2.4 をアンインストール(削除) - Windows10
  3. PHPの設定(パスを通す)と動作確認 - Windows10
  4. Apache + PHPの設定と動作確認 - Windows10
  5. php.ini の設定
  6. PHPのダウンロードとインストール - Windows10

関連記事(一部広告含む)