前回は、お手持ちのPCへXAMPPのインストール方法を紹介しました。
続いて、XAMPPの設定をしていきます。
非プログラマーのデザイナーさんでも、今後PHPアプリケーションを作ったり、 プログラマーが作ったソースをお手持ちのPCで確認をしたいこともあるかもしれません。
設定をしなくても動作はしますが、トラブル回避のためにも事前に設定をしておくとよいです。 まずは、XAMPPの起動確認とPHPが動作する環境であるか確認をします。
XAMPPの起動はコントロールパネルより行います。
ApacheとMySQLをスタートさせます。
各サービスが起動している場合は、ステータスが緑色になっています。
緑色の確認ができたら、ブラウザより以下のアドレスへアクセスしてください。
http://localhost次に、PHPがどうような設定で動作しているか確認をしてみます。
c:\xampp\htdocssに、phpinfo.phpを作成し以下のコードを記述して保存します。
1 2 3 4 5 6 7 |
/* ファイル名 : phpinfo.php * 説明 : PHPの設定内容を確認する関数です。 */</p> <?php phpinfo(); ?> |
ブラウザより、以下のURLへアクセスします。 http://localhost/phpinfo.php
この内容は、次項で説明する “php.ini” という設定ファイルの内容をブラウザを返して見やすく表示したものです。 phpinfo() というPHP関数を、PHPファイル(.php)に書き込んでアクセスすることにより、ブラウザで様々な設定確認ができます。
最低やっておきたいphp.iniの設定
XAMPPが起動していれば、php.ini の設定をしなくても動作します。
ですが、よくあるトラブルとしてマルチバイト文字の変換がうまくいかず文字化けを起こすことがあります。
ここでは基本の文字コードを、”UTF-8″ を指定して設定を行います。
C:\xampp\php\php.ini をテキストエディタで開きます。
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を再起動することで、新しい設定内容が反映されます。