システム開発 /

XAMPP・MAMPをインストールして、PHPを動かす環境をつくろう [Windows版XAMPPの設定]

前回は、お手持ちのPCへXAMPPのインストール方法を紹介しました。

続いて、XAMPPの設定をしていきます。

非プログラマーのデザイナーさんでも、今後PHPアプリケーションを作ったり、 プログラマーが作ったソースをお手持ちのPCで確認をしたいこともあるかもしれません。

設定をしなくても動作はしますが、トラブル回避のためにも事前に設定をしておくとよいです。 まずは、XAMPPの起動確認とPHPが動作する環境であるか確認をします。

 

XAMPPの起動はコントロールパネルより行います。

01  

ApacheとMySQLをスタートさせます。

02-01  

各サービスが起動している場合は、ステータスが緑色になっています。

02-02  

緑色の確認ができたら、ブラウザより以下のアドレスへアクセスしてください。

http://localhost  

下のような画面が表示されれば、正常に動作しています。 03

 

次に、PHPがどうような設定で動作しているか確認をしてみます。

c:\xampp\htdocssに、phpinfo.phpを作成し以下のコードを記述して保存します。

ブラウザより、以下のURLへアクセスします。 http://localhost/phpinfo.php

 

現在のPHPの設定内容がブラウザで確認できます。 05

 

この内容は、次項で説明する “php.ini” という設定ファイルの内容をブラウザを返して見やすく表示したものです。 phpinfo() というPHP関数を、PHPファイル(.php)に書き込んでアクセスすることにより、ブラウザで様々な設定確認ができます。

 

 

最低やっておきたいphp.iniの設定

 

XAMPPが起動していれば、php.ini の設定をしなくても動作します。
ですが、よくあるトラブルとしてマルチバイト文字の変換がうまくいかず文字化けを起こすことがあります。
ここでは基本の文字コードを、”UTF-8″ を指定して設定を行います。

 

C:\xampp\php\php.ini をテキストエディタで開きます。

07  
1860行目付近
mbstring.language = Japanese を追加 ; language for internal character representation. ; http://php.net/mbstring.language ;mbstring.language = Japanese mbstring.language = Japanese  
1866行目付近
mbstring.internal_encoding = UTF-8 を追加 ; internal/script encoding. ; Some encoding cannot work as internal encoding. ; (e.g. SJIS, BIG5, ISO-2022-*) ; http://php.net/mbstring.internal-encoding ;mbstring.internal_encoding = EUC-JP mbstring.internal_encoding = UTF-8  
1870行目付近
mbstring.http_input = auto を追加 ; http input encoding. ; http://php.net/mbstring.http-input ;mbstring.http_input = auto mbstring.http_input = auto  
1875行目付近
mbstring.http_output = pass を追加 ; http output encoding. mb_output_handler must be ; registered as output buffer to function ; http://php.net/mbstring.http-output ;mbstring.http_output = SJIS mbstring.http_output = pass  
1883行目付近
mbstring.encoding_translation = Off を追加 ; 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. ; http://php.net/mbstring.encoding-translation ;mbstring.encoding_translation = Off mbstring.encoding_translation = Off  
1888行目付近
mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII を追加 ; automatic encoding detection order. ; auto means ; http://php.net/mbstring.detect-order ;mbstring.detect_order = auto mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII  
1893行目付近
mbstring.substitute_character = none を追加 ; substitute_character used when character cannot be converted ; one from another ; http://php.net/mbstring.substitute-character ;mbstring.substitute_character = none; mbstring.substitute_character = none  
1904行目付近
mbstring.func_overload = 0 を追加 ; 0: No overload ; 1: Overload mail() function ; 2: Overload str*() functions ; 4: Overload ereg*() functions ; http://php.net/mbstring.func-overload ;mbstring.func_overload = 0 mbstring.func_overload = 0  
1907行目付近
mbstring.strict_detection = Off を追加 ; enable strict encoding detection. ;mbstring.strict_detection = Off mbstring.strict_detection = Off  

修正ができたら、Apacheを再起動してください。
php.iniを書き換えただけでは、設定内容は反映されません。
Apacheを再起動することで、新しい設定内容が反映されます。

 

この記事を書いた人

堀孝文

PAGE TOP