PHP 開発環境の構築
PHP アプリケーションの開発を始めるには、適切なローカル開発環境の構築が不可欠です。この環境は個人のコンピュータ上でサーバー設定をシミュレートし、コードを本番サーバーにデプロイする前に、安全に PHP コードを記述・テストすることを可能にします。
1. ローカル開発スタック (Stack) の理解
典型的な PHP 開発環境(一般に「スタック」と呼ばれます)は、コードを実行しウェブサービスを提供するために連携して動作するいくつかのコアコンポーネントで構成されています。
1.1 ウェブサーバー (Apache/Nginx)
ウェブサーバーは、ブラウザからの HTTP リクエストを処理する役割を担います。
- Apache: 歴史が長く、高機能で設定の柔軟性が高いため、XAMPP などのツールのデフォルトとして採用されています。
- Nginx: 高いパフォーマンスと効率性で知られ、特に高コンカレンシー(並行処理)なシナリオを得意とします。MAMP Pro では Nginx を選択肢として提供しています。
1.2 PHP インタープリタ
PHP はサーバーサイドスクリプト言語です。インタープリタはコードを読み取り、ロジックを実行して HTML 出力を生成するソフトウェアです。ウェブサーバーと統合されており、サーバーが .php ファイルに遭遇するたびに、それをインタープリタに渡して処理させます。
1.3 データベースシステム (MySQL/MariaDB)
ほとんどの動的サイトは、データ(ユーザー情報、ブログ記事など)を保存するためにデータベースを必要とします。MySQL は最もポピュラーなリレーショナルデータベースであり、MariaDB はそのコミュニティによって開発されたオープンソースの代替品です。両者は高度な互換性を持っています。
1.4 phpMyAdmin
これはウェブベースのグラフィカルな管理ツールです。複雑なコマンドラインを習得しなくても、ブラウザ上で直接データベース、テーブル、権限を管理できます。
2. XAMPP のインストールと使用方法 (クロスプラットフォーム)
XAMPP は、無料でオープンソースの統合パッケージです。その名前の由来は、クロスプラットフォーム (X)、Apache (A)、MySQL (M)、PHP (P)、Perl (P) の頭文字をとったものです。
2.1 インストール手順
- ダウンロード: apachefriends.org にアクセスし、使用しているシステム(Windows, Linux, macOS)に合った安定版をダウンロードします。
- インストーラーの実行:
- Windows: 権限問題を避けるため、
Program FilesではなくC:\xamppへのインストールを推奨します。 - macOS/Linux: プロンプトに従ってフォルダを Applications にドラッグするか、ターミナルで
.runファイルを実行します。 - サービスの起動: XAMPP Control Panel(コントロールパネル)を開き、Apache と MySQL の横にある「Start」ボタンをクリックします。モジュール名が緑色になれば起動成功です。
2.2 サーバーへのアクセス
- ホームページ: ブラウザで
http://localhost/と入力します。 - データベース管理: コントロールパネルの MySQL の横にある「Admin」をクリックするか、
http://localhost/phpmyadmin/にアクセスします。
3. MAMP のインストールと使用方法 (macOS 推奨)
MAMP (Mac, Apache, MySQL, PHP) は Windows 版もありますが、特に Mac ユーザーの間で非常に人気があります。インターフェースが非常にシンプルでフレンドリーなのが特徴です。
3.1 インストールと起動
- ダウンロード:
mamp.infoにアクセスし、無料版をダウンロードします。 - 起動: MAMP アプリを開き、大きな「Start Servers」ボタンをクリックします。
- 注意点: MAMP はデフォルトで 8888 ポートを使用します。そのため、ローカルサイトへのアクセスアドレスは通常
http://localhost:8888/となります。
4. 重要な概念:ドキュメントルート (htdocs)
XAMPP でも MAMP でも、htdocs という名称の特別なフォルダが存在します。これがウェブサーバーの「ドキュメントルート」です。
重要なルール: htdocs フォルダ(またはそのサブフォルダ)内に配置されたファイルのみが、ブラウザ経由でアクセス可能です。
- XAMPP パス:
C:\xampp\htdocs(Windows) - MAMP パス:
/Applications/MAMP/htdocs(macOS)
例:htdocs の中に myproject というフォルダを作成し、その中に test.php を入れた場合:
アクセス先は http://localhost/myproject/test.php となります(MAMP の場合は :8888 を付与)。
5. よくある質問:ポート衝突 (Port Conflict)
Apache が起動しない場合、通常は 80 ポートが他のソフトウェア(Skype や他のウェブサービスなど)によって占有されていることが原因です。
解決策:
- ポートの変更: XAMPP のインターフェースで「Config」->「httpd.conf」をクリックし、
Listen 80をListen 8080に書き換えます。 - アクセスアドレス: 変更後は、ブラウザで
http://localhost:8080/と入力する必要があります。