PHPとXAMPPは、Web開発で一緒に使われることが多いものですが、それぞれの役割は異なります。
PHPは、WebサイトやWebアプリケーションの開発で広く利用されているプログラミング言語です。
一方、XAMPPはApache、MariaDB、PHPなどをまとめてインストールし、自分のパソコン上にWeb開発環境を構築しやすくするソフトウェアパッケージです。
簡単に整理すると、次のような関係になります。
PHP
=WebサイトやWebアプリケーションを作るためのプログラミング言語
XAMPP
=PHPを含むWeb開発環境をまとめて構築できるパッケージ
PHPで作成したプログラムをブラウザから動かすには、PHPを実行できる環境が必要です。
XAMPPを利用すれば、WebサーバーやPHP、データベースなどを個別に準備する手間を減らし、ローカル環境でPHPを実行できます。
PHPとは
PHPは、主にWebサイトやWebアプリケーションの開発に利用されるサーバーサイドのプログラミング言語です。
正式名称は「PHP: Hypertext Preprocessor」です。
PHPを利用すると、HTMLだけでは実現しにくい動的な処理をWebサイトに追加できます。
PHPでできること
PHPでは、たとえば次のような処理を実装できます。
- お問い合わせフォームの送信処理
- ログイン・ログアウト機能
- 会員登録機能
- データベースへのデータ保存
- 商品一覧の表示
- 検索機能
- ブログシステム
- ECサイト
- WordPressのテーマやプラグインのカスタマイズ
PHPはHTMLの中に組み込んで使用することもできます。
たとえば、次のようなPHPコードがあります。
<?php
echo "Hello, PHP!";
?>
このコードがPHPの実行環境で処理されると、ブラウザには次のように表示されます。
Hello, PHP!
重要なのは、ブラウザがPHPコードそのものを直接実行しているわけではないという点です。
PHPはサーバー側で処理され、その実行結果として生成されたHTMLなどがブラウザへ送られます。
XAMPPとは
XAMPPは、Web開発に必要となる複数のソフトウェアをまとめて導入できるパッケージです。
PHPの学習やWebアプリケーション開発、WordPressのローカル環境構築などで利用されています。
XAMPPに含まれる主なソフトウェア
XAMPPには、主に次のようなソフトウェアが含まれています。
Apache
MariaDB
PHP
Perl
phpMyAdmin
これらを個別にインストールして設定することもできますが、初心者にとっては設定が複雑になることがあります。
XAMPPを利用すれば、Web開発に必要な環境をまとめて準備できます。
XAMPPという名前の意味
XAMPPという名称は、もともと次の要素を表しています。
X:クロスプラットフォーム
A:Apache
M:MySQL
P:PHP
P:Perl
現在のXAMPPでは、MySQLではなくMariaDBが採用されています。
そのため、現在の環境を説明する場合は「M=MariaDB」と紹介されることもありますが、名称の由来としてはMySQLであった点も知っておくとよいでしょう。
Apacheとは
Apacheは、Webサーバーソフトウェアです。
ブラウザからWebサイトへのアクセスを受け付け、必要なファイルや処理結果をブラウザへ返す役割を持っています。
ApacheとPHPの関係
XAMPPでPHPを使用する場合、Apacheがブラウザからのリクエストを受け取り、PHPの処理を行った結果をブラウザへ返します。
概念的には次のような流れです。
ブラウザ
↓
Apache
↓
PHP
↓
実行結果
↓
Apache
↓
ブラウザ
たとえば、ブラウザから、
http://localhost/test.php
へアクセスした場合、Apacheがtest.phpへのリクエストを受け付けます。
その後PHPコードが処理され、実行結果がブラウザへ返されます。
なお、PHPを実行するために必ずApacheが必要というわけではありません。
PHPにはコマンドラインからプログラムを実行する機能や、開発用の組み込みWebサーバーもあります。
XAMPPでは、ApacheとPHPを組み合わせてWeb開発環境を簡単に構築できると理解するとよいでしょう。
MariaDBとは
MariaDBは、リレーショナルデータベース管理システムです。
Webサイトで扱う情報を保存したり、検索したりするために利用されます。
PHPとMariaDBを組み合わせてできること
たとえば、会員制Webサイトであれば、MariaDBに次のような情報を保存できます。
- ユーザー名
- メールアドレス
- 登録日時
- 投稿情報
- 商品情報
- 注文情報
PHPからMariaDBへ接続することで、データを追加したり取得したりできます。
たとえば商品一覧ページであれば、次のような流れになります。
ブラウザ
↓
Apache
↓
PHP
↓
MariaDBから商品情報を取得
↓
PHPでHTMLを生成
↓
ブラウザへ表示
PHPからMariaDBへ接続するときには、PDOやMySQLiなどの仕組みを利用できます。
phpMyAdminとは
phpMyAdminは、MariaDBやMySQL系のデータベースをブラウザ上から管理できるツールです。
XAMPPにはphpMyAdminも含まれています。
phpMyAdminでできること
phpMyAdminでは、次のような操作ができます。
- データベースの作成
- テーブルの作成
- データの追加
- データの編集
- データの削除
- SQLの実行
- データのインポート
- データのエクスポート
SQLを直接入力して操作することもできますが、phpMyAdminでは画面上から操作できるため、データベース初心者にも扱いやすいのが特徴です。
ローカル環境とは
XAMPPを理解するうえで重要なのが「ローカル環境」です。
ローカル環境とは、基本的に自分のパソコン内に構築した開発・テスト環境を意味します。
公開サーバーとの違い
一般的なWebサイトは、インターネット上にあるWebサーバーで公開されています。
たとえば、
https://example.com/
へアクセスすると、インターネット上のWebサーバーと通信します。
一方、XAMPPを使えば、自分のパソコン上でApacheを動作させられます。
その場合は、一般的に次のようなURLを使用します。
http://localhost/
localhostとは
localhostは、自分自身のコンピューターを指すために使われるホスト名です。
XAMPPでApacheを起動した状態で、
http://localhost/
へアクセスすると、自分のパソコン上で動作しているWebサーバーへ接続します。
そのため、インターネット上へWebサイトを公開しなくてもPHPプログラムの動作確認ができます。
XAMPPを使ってPHPを動かす方法
XAMPPを利用すれば、比較的簡単にPHPを実行できます。
ここではWindows版XAMPPを例として、基本的な流れを説明します。
1.XAMPPをインストールする
最初にXAMPPをパソコンへインストールします。
XAMPPをインストールすると、Apache、PHP、MariaDB、phpMyAdminなどをまとめて利用できるようになります。
2.XAMPP Control Panelを起動する
Windows版XAMPPでは、XAMPP Control Panelから各サービスを操作できます。
PHPファイルをブラウザから動かす場合は、まずApacheを起動します。
データベースも利用する場合はMariaDBも起動します。
基本的には次のように操作します。
Apache → Start
MariaDB → Start
Apacheが正常に起動すれば、ローカルWebサーバーへアクセスできる状態になります。
3.htdocsフォルダにPHPファイルを保存する
Windows版XAMPPを標準的な場所へインストールした場合、Webサイトのファイルは一般的に次のフォルダへ配置します。
C:\xampp\htdocs\
このhtdocsは、ApacheがWeb上へ公開するファイルを配置するためのフォルダです。
たとえば、
C:\xampp\htdocs\test.php
というファイルを作成します。
内容は次のようにします。
<?php
echo "Hello, PHP!";
?>
4.ブラウザからPHPファイルへアクセスする
Apacheを起動した状態で、ブラウザから次のURLへアクセスします。
http://localhost/test.php
画面に、
Hello, PHP!
と表示されれば、PHPが正常に実行されています。
プロジェクトごとにPHPファイルを管理する方法
PHPを学習していくと、htdocs直下にすべてのファイルを保存するより、プロジェクトごとにフォルダを分けたほうが管理しやすくなります。
sampleフォルダを作る場合
たとえば、次のようなフォルダを作成します。
C:\xampp\htdocs\sample\
その中に、
index.php
を保存します。
フォルダ構成は次のようになります。
htdocs
└── sample
└── index.php
ブラウザからは、
http://localhost/sample/
または、
http://localhost/sample/index.php
へアクセスできます。
index.phpがディレクトリの既定ファイルとして設定されていれば、URLにindex.phpを書かなくても表示できます。
PHPとHTMLを組み合わせる方法
PHPはHTMLと組み合わせて利用できます。
たとえば、次のように記述できます。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>PHPテスト</title>
</head>
<body>
<h1>
<?php
echo "PHPで表示したタイトル";
?>
</h1>
</body>
</html>
PHPコードはサーバー側で処理される
PHPの部分は、
<?php
処理内容
?>
のように記述します。
Webサーバー側でPHPが実行されると、ブラウザへはPHPコードそのものではなく、その実行結果が送られます。
先ほどの例であれば、ブラウザ側では概念的に次のようなHTMLとして扱われます。
<h1>PHPで表示したタイトル</h1>
この仕組みが、PHPをサーバーサイド言語と呼ぶ理由の一つです。
PHPファイルを直接開いても正しく実行されない理由
初心者がつまずきやすいポイントの一つが、PHPファイルをダブルクリックして開いてしまうことです。
たとえば、
test.php
をエクスプローラーから直接開いても、通常はPHPプログラムとして正常に実行されません。
ブラウザにはPHPを実行する機能がない
一般的なWebブラウザは、HTML、CSS、JavaScriptなどを解釈できます。
しかし、PHPは通常サーバー側で実行される言語です。
そのためPHPファイルは、
http://localhost/test.php
のようにWebサーバーを経由してアクセスする必要があります。
XAMPPを使用する場合は、ApacheとPHPがその処理を担当します。
XAMPPでデータベースを使う方法
PHPだけを学習するのであればApacheを起動するだけでも構いません。
しかし、データベースを使用したWebアプリケーションを作る場合はMariaDBも起動します。
phpMyAdminを開く
ApacheとMariaDBを起動した状態で、一般的には次のURLへアクセスします。
http://localhost/phpmyadmin/
すると、phpMyAdminの管理画面を開けます。
ここからデータベースやテーブルを作成できます。
データベースを作成する例
たとえば、
sample_db
というデータベースを作成します。
その中に、
users
というテーブルを作成し、ユーザー情報を保存するといった使い方ができます。
PHPからsample_dbへ接続すれば、Webページからユーザー情報を登録したり、取得したりできるようになります。
PHPとXAMPPとWordPressの関係
XAMPPはWordPressの学習や開発にも利用できます。
WordPressは、PHPを中心として開発されているCMSです。
記事やサイト設定、ユーザー情報などはデータベースに保存されます。
WordPressを動かすために必要な環境
WordPressを動かすには、一般的に次のような環境が必要です。
Webサーバー
PHP
データベース
XAMPPには、
Apache
PHP
MariaDB
が含まれているため、ローカル環境でWordPressを動かすための環境を構築できます。
関係を簡単に表すと、次のようになります。
XAMPP
├── Apache
├── PHP
└── MariaDB
↓
WordPressを実行
XAMPPはWordPressに必須ではない
WordPressを動かすために、必ずXAMPPを使用しなければならないわけではありません。
XAMPPはあくまでもローカル開発環境を構築する方法の一つです。
レンタルサーバーやDocker、ほかのローカル開発ツールなどを使ってWordPressを動かすこともできます。
XAMPPを使うメリット
XAMPPには、PHP初心者にとって多くのメリットがあります。
PHPの学習を始めやすい
Apache、PHP、MariaDBなどを個別にインストールすると、設定が複雑になる場合があります。
XAMPPなら必要なソフトウェアをまとめて導入できるため、環境構築の手間を減らせます。
PHP初心者がプログラミングそのものの学習へ進みやすいのがメリットです。
Webサイトを公開せずにテストできる
XAMPPを使えば、自分のパソコン内でWebサイトを動かせます。
インターネットへ公開する前に、
- PHPが正しく動作するか
- データベースへ接続できるか
- エラーが発生しないか
- WordPressのカスタマイズが正常か
といった点を確認できます。
データベースの学習もできる
XAMPPにはMariaDBやphpMyAdminが含まれています。
そのため、PHPだけでなくSQLやデータベースについても学習できます。
PHPとデータベースを連携できるようになると、より本格的なWebアプリケーションを作れるようになります。
WordPressの学習に利用できる
WordPressを自分のパソコンへインストールすれば、公開サイトに影響を与えずにテーマやプラグインの動作を確認できます。
PHPを使ったWordPressカスタマイズを勉強したい場合にも便利です。
XAMPPを使うときの注意点
XAMPPは便利ですが、使用するときはいくつか注意点があります。
基本的には開発・学習・テスト用途で使う
XAMPPは、ローカルでのWeb開発や学習、テストに向いています。
XAMPPをインストールしたパソコンをそのままインターネットへ公開し、本番Webサーバーとして使用することは基本的におすすめできません。
本番環境では、セキュリティやアクセス権限、バックアップ、サーバー設定などを適切に管理する必要があります。
Apacheが起動しない場合がある
Apacheを起動しようとしても、正常にStartできないことがあります。
代表的な原因の一つがポート競合です。
ApacheではHTTP通信に80番ポート、HTTPS通信に443番ポートなどが利用されることがあります。
ほかのアプリケーションが同じポートを使用している場合、Apacheが起動できない可能性があります。
ただし、Apacheが起動しない原因はポート競合だけではありません。
設定ファイルや権限、ほかのプロセスなどが原因になることもあります。
PHPのバージョンを確認する
PHPには複数のバージョンがあります。
使用するWordPressやPHPフレームワーク、ライブラリによって、対応しているPHPバージョンが異なる場合があります。
XAMPPを導入するときは、使用したいシステムが対応しているPHPバージョンを確認することが重要です。
ローカル環境と本番環境は完全に同じではない
XAMPPで正常に動作したPHPプログラムが、本番サーバーでも必ず同じように動作するとは限りません。
たとえば、次のような違いが影響する場合があります。
- PHPのバージョン
- PHP拡張機能
- データベースの種類やバージョン
- Webサーバーの設定
- OS
- ファイルパス
- ファイルやディレクトリの権限
- 文字コード
- セキュリティ設定
そのため、最終的には本番環境でも動作確認を行う必要があります。
XAMPPを使わなくてもPHPは利用できる
PHPを使用するために、XAMPPは必須ではありません。
XAMPP以外にもPHPの実行環境を構築する方法があります。
PHPを動かす主な方法
たとえば、次のような方法があります。
- PHPを単独でインストールする
- ApacheとPHPを個別にインストールする
- NginxとPHP-FPMを組み合わせる
- Dockerを利用する
- レンタルサーバーを利用する
- VPSやクラウドサーバーを利用する
- PHPの組み込みWebサーバーを利用する
PHPには開発用の簡易Webサーバーも用意されています。
PHPがインストールされていれば、たとえば次のようなコマンドで起動できます。
php -S localhost:8000
そのため、
PHPを使うなら必ずXAMPPが必要
という理解は正しくありません。
XAMPPは、PHP初心者でもWeb開発環境を構築しやすくする選択肢の一つです。
PHPとXAMPPの違い
PHPとXAMPPを混同しないよう、それぞれの役割を整理しておきましょう。
PHPはプログラミング言語
PHPは、WebサイトやWebアプリケーションで動的な処理を実装するためのプログラミング言語です。
フォーム処理やデータベース連携、ログイン機能などを実装できます。
ApacheはWebサーバー
Apacheは、ブラウザからのリクエストを受け付け、WebページやPHPの処理結果などを返すWebサーバーソフトウェアです。
MariaDBはデータベース管理システム
MariaDBは、Webサイトで利用する情報を保存・検索・更新するためのデータベース管理システムです。
XAMPPはそれらをまとめたパッケージ
XAMPPは、Apache、MariaDB、PHPなどをまとめて導入しやすくしたソフトウェアパッケージです。
関係を図にすると、次のようになります。
XAMPP
│
├── Apache
│ └── Webサーバー
│
├── MariaDB
│ └── データベース管理システム
│
├── PHP
│ └── プログラミング言語・実行環境
│
├── Perl
│
└── phpMyAdmin
└── データベース管理ツール
PHP初心者がXAMPPを使う基本的な流れ
PHPをこれから学習する場合は、次の順番で進めると理解しやすいでしょう。
1.XAMPPをインストールする
まずはXAMPPを導入し、PHPを実行できるローカル環境を構築します。
2.Apacheを起動する
ブラウザからPHPファイルへアクセスできるように、Apacheを起動します。
3.htdocsにPHPファイルを作成する
htdocsの中へプロジェクトフォルダを作り、index.phpなどのPHPファイルを保存します。
4.localhostからアクセスする
ブラウザから、
http://localhost/
へアクセスし、PHPが正常に動作するか確認します。
5.PHPの基本文法を学ぶ
環境が整ったら、次のようなPHPの基本を学習していきます。
- 変数
- 配列
- 条件分岐
- 繰り返し処理
- 関数
- フォーム処理
6.MariaDBとの連携を学ぶ
PHPの基本を理解したら、データベースとの接続やSQLを学習すると、Webアプリケーション開発への理解が深まります。
7.WordPressやWebアプリケーションへ発展させる
PHPとデータベースを扱えるようになったら、WordPressのカスタマイズや本格的なWebアプリケーション開発へ進めます。
PHPとXAMPPの関係をまとめると
PHPとXAMPPは密接な関係がありますが、同じものではありません。
PHPは、WebサイトやWebアプリケーションの動的な処理を実装するためのプログラミング言語です。
XAMPPは、Apache、MariaDB、PHPなどをまとめて導入し、自分のパソコン上にWeb開発環境を構築しやすくするソフトウェアパッケージです。
XAMPPでPHPを実行する基本的な流れは、次のようになります。
1. XAMPPをインストール
↓
2. Apacheを起動
↓
3. htdocsにPHPファイルを保存
↓
4. http://localhost/からアクセス
↓
5. PHPが実行される
↓
6. 実行結果がブラウザに表示される
さらにデータベースを使用する場合は、MariaDBも起動します。
ブラウザ
↓
Apache
↓
PHP
↓
MariaDB
↓
PHP
↓
Apache
↓
ブラウザ
PHP初心者は、まず「PHPはプログラミング言語」「ApacheはWebサーバー」「MariaDBはデータベース管理システム」「XAMPPはそれらをまとめて導入しやすくするパッケージ」という違いを理解しておくことが重要です。
この関係を理解しておけば、PHPの学習だけでなく、データベース連携やWordPressの仕組みも理解しやすくなるでしょう。
以上、PHPとXAMPPの関係や使い方についてでした。
最後までお読みいただき、ありがとうございました。










