2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PHPとは何か?PHPが動くしくみをゼロから理解する

Last updated at Posted at 2025-05-29

PHPを学び始めた人にとって、「PHPってそもそも何?」「どうやって動いているの?」といった根本的な仕組みを理解することはとても重要です。

この記事では、CLIやインタプリタとは何か? という基礎から、Webサーバー経由でPHPが実行される仕組み、Laravelとの関係性までを体系的に整理して解説します。


✅ PHPとは?

PHPは Webアプリケーションを動的に構築するためのサーバーサイドスクリプト言語 です。
HTMLの中に埋め込んで使用し、データベースと連携して動的なページを生成するのが得意です。

  • 拡張子:.php
  • インタプリタ型:実行時に1行ずつ読み込んで処理
  • 主にサーバーサイドで動作(例:フォーム送信、ログイン処理など)

✅ CLIとは?

CLI(Command Line Interface) は、コマンドラインから操作する方式のことです。
Macの「ターミナル」やWindowsの「コマンドプロンプト」などで使います。

PHPではCLIを使って直接スクリプトを実行できます。

実行例

php hello.php

または、ワンライナーも可能です:

php -r "echo 'Hello from PHP';"

Laravelなどのフレームワークでは php artisan のようなCLIコマンドも多数使います。


✅ インタプリタとは?

インタプリタ とは、プログラムを構文ごとに読みながら実行するソフトウェアです。

種類 説明 主な言語
インタプリタ型 実行時に1行ずつ読み込んで処理 PHP, Python, Ruby, JavaScript
コンパイル型 事前に全体をバイナリに変換してから実行 C, C++, Go, Rust

PHPは「インタプリタ型」の言語です。コードを書いたらすぐ動作確認できるのが特徴です。


✅ PHPを動かすには何が必要?

構成要素 役割
PHP本体 PHPコードを実行するプログラム(インタプリタ)
Webサーバ(ApacheやNginx) ユーザーからのリクエストを受け取り、PHPに渡す
PHP-FPM WebサーバとPHPの間を仲介して高速処理するマネージャ
OS(macOS/Linuxなど) 各プログラムが動く土台

✅ WebサーバーなしでもPHPは動く?

はい、CLIを使えばWebサーバー不要でPHPを動かせます
また、PHPには簡易Webサーバーが内蔵されています。

簡易Webサーバーの起動例(開発用)

php -S localhost:8000

この状態で http://localhost:8000 にアクセスすれば、ブラウザからPHPが実行されます。


✅ LaravelとPHPの関係

Laravelは PHPで構築されたWebアプリケーションフレームワーク です。

Laravelの構成例

├── public/        ← 入口 (index.php)
├── routes/        ← ルーティング設定
├── app/           ← MVCロジック (Controller, Model)
├── config/        ← 設定ファイル
├── resources/     ← Bladeテンプレート
└── vendor/        ← Composerで管理されるライブラリ

Laravelの処理の流れ(概要)

  1. ブラウザからURLアクセス(例:/posts
  2. Webサーバーが public/index.php を実行
  3. Laravelのコアが読み込まれる(サービスプロバイダなど)
  4. ルーティングに応じてControllerが呼ばれる
  5. データベースアクセスなどを経てViewを返す

✅ 図解:PHPがWebで動くしくみ(HTTP/HTTPSリクエスト処理)

[1] ユーザーがブラウザでURLにアクセス(HTTP/HTTPS)
         ↓
[2] DNS(例: Route53)がドメインからIPを解決
         ↓
[3] Webサーバー(Apache / Nginx)がリクエストを受け取る
         ↓
[4] 該当するPHPファイル(例: index.php)を探す
         ↓
[5] WebサーバーがPHP-FPMに処理を依頼(FastCGI経由)
         ↓
[6] PHPインタプリタが index.php を解釈し、実行
         ↓
[7] データベースにアクセス(MySQLなど)
         ↓
[8] HTMLなどのレスポンスが生成される
         ↓
[9] Webサーバーがレスポンスをブラウザに返却
         ↓
[10] ユーザーのブラウザに画面が表示される

🧠 補足:この流れはLaravelなどのフレームワークを使っている場合でも、基本はこの順序に従います。


✅ まとめ

用語 意味 補足
CLI コマンドライン操作の方式 php script.php で実行できる
インタプリタ ソースコードを1行ずつ実行する仕組み PHPはこの方式
Webサーバー HTTPリクエストを受けてPHPに渡す ApacheやNginxが代表例
Laravel PHPで作られたWebフレームワーク モダンなWebアプリ開発が可能

🔚 最後に

CLIやインタプリタという仕組みを知ることで、PHPやLaravelの動作がより明確に見えてきます。
次は「PHP-FPMの仕組み」や「Composerの役割」なども学ぶと、さらに理解が深まります。

ご参考になれば幸いです!

2
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?