Learning site for website creation

XAMPP for Windows 8系の初期設定

公開日:2022年07月02日 更新日:2024年01月08日

XAMPPをインストールしただけでは日本語をうまく扱えないので、設定ファイルを変更します。またエラー設定等も変更します。

変更する設定ファイル

「xampp」フォルダ内にPHPに関するファイルの入った「php」フォルダがあります。「php」フォルダ内の設定ファイル「php.ini」を編集します。

編集前にバックアップ

設定ファイルが壊れてしまうとXAMPPが動かなくなってしまいます。いつでも元の設定に戻れるよう、現在の設定ファイルをコピーしてバックアップを作成します。

コピーで作成したバックアップファイルの名前を変更します。バックアップファイルが設定ファイルとして認識されないよう念のため拡張子も変えておきます。
例)php_日付.ini.bk

拡張子を変更してもよいか確認されるので「OK」をクリックします。

設定ファイルを編集

バックアップを作成した後、設定ファイル「php.ini」を編集します。

開始タグの短縮形に関する設定変更(198行目付近)

PHPブロックタグを短縮形で使用できるようにします。

変更前

short_open_tag=Off

変更後

short_open_tag=On

開始タグの短縮形

通常の記述

<?php echo 'Hello World !!'; ?>

短縮形

<? echo 'Hello World !!'; ?>

echo付き短縮形

<?= 'Hello World !!'; ?>

エラーレベルに関する設定変更(484行目付近)

開発時は詳細なエラーを表示させてデバッグの手がかりにします。

変更前

error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT

変更後

error_reporting=E_ALL

定数説明
E_ERROR重大な実行時エラー。これは、メモリ確保に関する問題のように復帰で きないエラーを示します。スクリプトの実行は中断されます。
E_WARNING実行時の警告 (致命的なエラーではない)。スクリプトの実行は中断さ れません。
E_PARSEコンパイル時のパースエラー。パースエラーはパーサでのみ生成されま す。
E_NOTICE実行時の警告。エラーを発しうる状況に遭遇したことを示す。 ただし通常のスクリプト実行の場合にもこの警告を発することがありうる。
E_CORE_ERRORPHPの初期始動時点での致命的なエラー。E_ERRORに 似ているがPHPのコアによって発行される点が違う。
E_CORE_WARNING(致命的ではない)警告。PHPの初期始動時に発生する。 E_WARNINGに似ているがPHPのコアによって発行される 点が違う。
E_COMPILE_ERRORコンパイル時の致命的なエラー。E_ERRORに 似ているがZendスクリプティングエンジンによって発行される点が違う。
E_COMPILE_WARNINGコンパイル時の警告(致命的ではない)。E_WARNINGに 似ているがZendスクリプティングエンジンによって発行される点が違う。
E_USER_ERRORユーザーによって発行されるエラーメッセージ。E_ERROR に似ているがPHPコード上でtrigger_error()関数を 使用した場合に発行される点が違う。
E_USER_WARNINGユーザーによって発行される警告メッセージ。E_WARNING に似ているがPHPコード上でtrigger_error()関数を 使用した場合に発行される点が違う。
E_USER_NOTICEユーザーによって発行される注意メッセージ。E_NOTICEに に似ているがPHPコード上でtrigger_error()関数を 使用した場合に発行される点が違う。
E_STRICTコードの相互運用性や互換性を維持するために PHP がコードの変更を提案する。
E_RECOVERABLE_ERRORキャッチできる致命的なエラー。危険なエラーが発生したが、 エンジンが不安定な状態になるほどではないことを表す。 ユーザー定義のハンドラでエラーがキャッチされなかった場合 (set_error_handler() も参照ください) は、 E_ERROR として異常終了する。
E_DEPRECATED実行時の注意。これを有効にすると、 将来のバージョンで動作しなくなるコードについての警告を受け取ることができる。
E_USER_DEPRECATEDユーザー定義の警告メッセージ。これは E_DEPRECATED と同等だが、 PHP のコード上で関数 trigger_error() によって作成されるという点が異なる。
E_ALLサポートされる全てのエラーと警告。 PHP 5.4.0 より前のバージョンでは、E_STRICT レベルのエラーは除く。

エラー表示に関する設定変更(501行目付近)

公開時にエラー内容が表示されるとエラーコメントから内部情報がわかってしまいます。そのため公開時はエラー表示設定を「Off」にします。

開発時はエラー内容を表示させて修正をするため「On」にします。

公開時(エラー表示しない)

display_errors=Off

開発時(エラー表示する:初期状態でこちらになっているはず)

display_errors=On

HTTPヘッダに出力するデフォルト文字コード設定変更(715行目付近)

行頭に「;」がついている設定はコメントとして扱われ無効化されています。
もし設定が無効化されていた場合は行頭の「;」を削除してください。

変更前

;default_charset=”UTF-8″

変更後(初期状態でこちらになっているはず)

default_charset=”UTF-8″

画像作成モジュールを利用可能にする(920行目付近)

行頭に「;」がついている設定はコメントとして扱われ無効化されています。
もし設定が無効化されていた場合は行頭の「;」を削除してください。

変更前

;extension=gd

変更後

extension=gd

マルチバイト文字に関する設定変更(1658行目付近)

マルチバイト文字で使用する言語を指定します。
行頭の「;」を削除して設定を有効にします。

変更前

;mbstring.language = Japanese

変更後

mbstring.language = Japanese

自動文字エンコードの検出に関する設定変更(1696行目付近)

PHP内で使用する文字コードの検出順を指定します。
行頭の「;」を削除して設定を有効にし「auto」を「UTF-8,SJIS,EUC-JP,JIS,ASCII」に変更します。

変更前

;mbstring.detect_order = auto

変更後

mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII

タイムゾーンに関する設定変更(1980行目付近)

タイムゾーンを変更します。

変更前

date.timezone=Europe/Berlin

変更後

date.timezone=Asia/Tokyo

設定変更完了

変更後の「php.ini」を保存して設定変更完了です。

設定をXAMPPの反映

修正した設定をXAMPPに反映させます。
一度「apache」を停止させた後、もう一度開始します。開始のタイミングで設定が読み込まれます。