WindowsでPHPを使う方法、知ってる?

2.4.Windows用PHP5の設定

2.4.1.php.iniの修正

1.「C:\php5\php.ini」の以下の行を修正します。
以下の行を探し出し、
;extension=php_mbstring.dll
行頭の「;」を削除します。
extension=php_mbstring.dll

さらに、以下の行を探し出し、
;default_charset = "iso-8859-1"
行頭の「;」を削除し、"iso-8859-1"を"UTF-8"に修正します。
default_charset = "UTF-8"

さらに、以下の行を探し出し、
extension_dir = "./"
下記のように修正します。
extension_dir = "c:/php5/ext"
さらに、以下のブロックを探し出し、
[mbstring]
; language for internal character representation.
;mbstring.language = Japanese

; internal/script encoding.
; Some encoding cannot work as internal encoding.
; (e.g. SJIS, BIG5, ISO-2022-*)
;mbstring.internal_encoding = EUC-JP

; http input encoding.
;mbstring.http_input = auto

; http output encoding. mb_output_handler must be
; registered as output buffer to function
;mbstring.http_output = SJIS

; enable automatic encoding translation according to
; mbstring.internal_encoding setting. Input chars are
; converted to internal encoding by setting this to On.
; Note: Do _not_ use automatic encoding translation for
; portable libs/applications.
;mbstring.encoding_translation = Off

; automatic encoding detection order.
; auto means
;mbstring.detect_order = auto

; substitute_character used when character cannot be converted
; one from another
;mbstring.substitute_character = none;

; overload(replace) single byte functions by mbstring functions.
; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(),
; etc. Possible values are 0,1,2,4 or combination of them.
; For example, 7 for overload everything.
; 0: No overload
; 1: Overload mail() function
; 2: Overload str*() functions
; 4: Overload ereg*() functions
;mbstring.func_overload = 0

; enable strict encoding detection.
;mbstring.strict_encoding = Off

行頭の「;」を削除し、修正を加えます。
[mbstring]
; language for internal character representation.
mbstring.language = Japanese

; internal/script encoding.
; Some encoding cannot work as internal encoding.
; (e.g. SJIS, BIG5, ISO-2022-*)
mbstring.internal_encoding = UTF-8…行頭の「;」も削除

; http input encoding.
mbstring.http_input = auto

; http output encoding. mb_output_handler must be
; registered as output buffer to function
mbstring.http_output = UTF-8…行頭の「;」も削除

; enable automatic encoding translation according to
; mbstring.internal_encoding setting. Input chars are
; converted to internal encoding by setting this to On.
; Note: Do _not_ use automatic encoding translation for
; portable libs/applications.
mbstring.encoding_translation = On…行頭の「;」も削除

; automatic encoding detection order.
; auto means
mbstring.detect_order = auto

; substitute_character used when character cannot be converted
; one from another
mbstring.substitute_character = none;

; overload(replace) single byte functions by mbstring functions.
; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(),
; etc. Possible values are 0,1,2,4 or combination of them.
; For example, 7 for overload everything.
; 0: No overload
; 1: Overload mail() function
; 2: Overload str*() functions
; 4: Overload ereg*() functions
mbstring.func_overload = 0

; enable strict encoding detection.
mbstring.strict_encoding = Off

以上でPHPが動く環境が完成しました。
タスクバーのApacheアイコンをクリックし、「Apache2.2」→「Restart」をクリックして Apache2を再起動します。


Windows用Apache2の起動時に「The requested operation has failed!」と表示されてしまう場合は?

2.2.2.1.PHPモジュールの組み込み」または、「2.3.1.httpd.confの修正」がうまくいっていない可能性があります。
"c:/php5/php5apache2_2.dll"が存在するか、
httpd.confで「LoadModule php5_module "c:/php5/php5apache2_2.dll"」と正しく記述されているか、確認しましょう。

[目次]
<<2.3.Windows用Apache2の設定  >>2.4.2.Windows用Apache2の起動時に「The requested operation has failed!」と表示されてしまう場合は?