🐘 PHP基礎文法完全ガイド【図解×コード】
📌 はじめに
この記事では、PHPの基本文法を図解とコードで分かりやすく解説します。Web開発を始めたい方や、他言語からPHPを学ぶ方におすすめの内容です。
🖥️ PHPってどんな言語?
PHPは以下のような場面でよく使われます:
- Webアプリケーション(WordPress、Laravel、Symfonyなど)
- CMS(コンテンツ管理システム)
- APIサーバー
- EC サイト・業務システム
🌍 PHPの特徴(図解)
🧰 1. 開発環境の準備
🔧 PHPをインストールする
PHP 8.2以上が推奨です。
方法1: XAMPP(初心者向け)
方法2: 公式からインストール
バージョン確認
php -version
エディタ
- VS Code + PHP拡張機能
- PhpStorm(有料だが高機能)
🚀 2. 「Hello, World!」を動かしてみる
<?php
echo "Hello, World!";
PHPファイルは<?phpで始まります。
Webサーバーで実行
php -S [localhost:8000](http://localhost:8000)
ブラウザでhttp://localhost:8000にアクセス。
📘 3. 変数とデータ型
PHPは動的型付けで、変数は$で始まります。
主な型一覧
| 型 | 説明 | 例 |
|---|---|---|
| int | 整数 | 10, -5 |
| float | 小数 | 3.14 |
| bool | 真偽値 | true / false |
| string | 文字列 | "Hello" |
| array | 配列 | [1, 2, 3] |
サンプル
<?php
$age = 25;
$height = 180.5;
$name = "Taro";
$isMember = true;
型宣言(PHP 7.0以降)
<?php
function add(int $a, int $b): int {
return $a + $b;
}
🔁 4. 条件分岐(if / switch / match)
if 文
<?php
$score = 80;
if ($score >= 90) {
echo "Excellent!";
} elseif ($score >= 70) {
echo "Good!";
} else {
echo "Try again";
}
switch 文
<?php
$n = 2;
switch ($n) {
case 1:
echo "One";
break;
case 2:
echo "Two";
break;
default:
echo "Other";
}
match 式(PHP 8.0以降)
<?php
$n = 2;
$result = match ($n) {
1 => "One",
2 => "Two",
default => "Other"
};
echo $result;
🔄 5. 繰り返し
for 文
<?php
for ($i = 0; $i < 3; $i++) {
echo $i . "\n";
}
foreach 文(配列の繰り返し)
<?php
$nums = [10, 20, 30];
foreach ($nums as $n) {
echo $n . "\n";
}
while 文
<?php
$i = 0;
while ($i < 3) {
echo $i . "\n";
$i++;
}
📦 6. 配列(Array)
通常の配列
<?php
$nums = [10, 20, 30];
foreach ($nums as $n) {
echo $n . "\n";
}
連想配列(キー付き配列)
<?php
$person = [
"name" => "Taro",
"age" => 25,
"city" => "Tokyo"
];
echo $person["name"]; // Taro
foreach ($person as $key => $value) {
echo "$key: $value\n";
}
🧱 7. 関数(Function)
<?php
function add($a, $b) {
return $a + $b;
}
$result = add(3, 5);
echo $result; // 8
型宣言付き
<?php
function add(int $a, int $b): int {
return $a + $b;
}
デフォルト引数
<?php
function greet($name = "Guest") {
return "Hello, " . $name;
}
echo greet(); // Hello, Guest
echo greet("Taro"); // Hello, Taro
🧑🏫 8. クラスとオブジェクト(図解付き)
サンプル
<?php
class Person {
private string $name;
private int $age;
public function __construct(string $name, int $age) {
$this->name = $name;
$this->age = $age;
}
public function greet(): void {
echo "Hello, I'm " . $this->name . "\n";
}
}
// 使用例
$p = new Person("Taro", 20);
$p->greet(); // Hello, I'm Taro
プロパティの型宣言(PHP 7.4以降)
<?php
class Person {
public string $name;
public int $age;
public function __construct(string $name, int $age) {
$this->name = $name;
$this->age = $age;
}
}
⚠️ 9. 例外処理
<?php
try {
$a = 10 / 0;
} catch (DivisionByZeroError $e) {
echo "エラー:" . $e->getMessage();
}
カスタム例外
<?php
class CustomException extends Exception {}
try {
throw new CustomException("カスタムエラー");
} catch (CustomException $e) {
echo $e->getMessage();
}
📝 10. 実践課題
👉 課題
「整数の配列から最大値を返す getMax 関数を作成せよ」
解答例
<?php
function getMax(array $nums): int {
$max = $nums[0];
foreach ($nums as $n) {
if ($n > $max) {
$max = $n;
}
}
return $max;
}
// または組み込み関数で
function getMax(array $nums): int {
return max($nums);
}
// テスト
$nums = [5, 2, 9, 1, 7];
echo getMax($nums); // 9
🎉 まとめ
この記事では、PHPの基本文法を以下のように解説しました。
- 開発環境: PHPのインストール
- 基本構文: 変数、if文、ループ
- 関数とクラス: 再利用可能なコード
- 例外処理: エラーハンドリング
Java/Python/PHPの比較
| 項目 | Java | Python | PHP |
|---|---|---|---|
| 型宣言 | 必須 | 不要(型ヒント可) | 任意(推奨) |
| 変数の記号 | なし | なし | $ 必須 |
| Hello World | 5行程度 | 1行 | 1~2行 |
| 主な用途 | 業務システム | AI/データ分析 | Web開発 |
次のステップ
- LaravelでWebアプリ開発に挑戦
- Composerでパッケージ管理を学ぶ
- PDOでデータベース連携
これからPHPを学ぶ方の参考になれば嬉しいです!
参考になったら「いいね」👍 お願いします!