PHP入門向けチートシート

2025年3月23日

📝 構文の基本

<?php
// PHPコードはここに書きます
echo "Hello World!";
?>

PHPのファイルは.php拡張子を使用します。

コードは<?phpで始まり?>で終わります。

各文は;(セミコロン)で終えます。

HTMLファイル内にPHPコードを埋め込むことができます。

🔄 変数と型

$name = "山田"; // 文字列
$age = 30; // 整数
$price = 199.99; // 小数
$is_active = true; // 真偽値

変数は$記号で始まります。

PHPは動的型付け言語です。

変数の型を確認するにはvar_dump()関数を使います。

変数名は大文字小文字を区別します。

🔀 制御構造

// if文
if ($score >= 80) {
  echo "合格";
} elseif ($score >= 60) {
  echo "再試験";
} else {
  echo "不合格";
}
// ループ
for ($i = 0; $i < 5; $i++) {
  echo $i;
}
foreach, while, do-whileループも使用できます。

🧩 関数

// 関数の定義
function greet($name) {
  return "こんにちは、" . $name . "さん";
}

// 関数の呼び出し
echo greet("田中"); // こんにちは、田中さん

引数はカンマで区切って複数渡せます。

デフォルト引数も設定可能です。

引数の型宣言はPHP 7以降で使用できます。

📊 配列

// 配列の作成
$fruits = ["りんご", "バナナ", "オレンジ"];

// 連想配列
$user = [
  "name" => "佐藤",
  "email" => "sato@example.com",
  "age" => 28
];

配列にアクセス: $fruits[0]

連想配列にアクセス: $user["name"]

foreach文を使って配列を簡単に処理できます。

📝 フォーム処理

// フォームデータの取得
$name = $_POST['name'];
$email = $_GET['email'];

// 安全な入力処理
$clean_name = htmlspecialchars($name);

$_POST: POSTメソッドのデータ

$_GET: GETメソッドのデータ

$_REQUEST: POSTとGETの両方

入力検証は常に行い、XSS攻撃を防止しましょう。

💾 データベース

// MySQLi接続
$conn = new mysqli("localhost", "user", "pass", "db");

// PDO接続
$pdo = new PDO("mysql:host=localhost;dbname=db", "user", "pass");
$stmt = $pdo->prepare("SELECT * FROM users");
$stmt->execute();

PDOは複数のデータベースに対応

prepare文を使用してSQLインジェクションを防止

トランザクションを使用して整合性を保つことが重要です。

🔒 セッションとクッキー

// セッション開始
session_start();

// セッション変数の設定
$_SESSION['user_id'] = 123;

// クッキーの設定
setcookie("username", "john", time() + 3600);

session_start()は必ず最初に呼び出す

$_SESSIONはサーバー側で保存

setcookie()はHTTPヘッダー送信前に呼び出す

セッションIDの盗難に注意し、定期的に再生成しましょう。

🛠 主要な関数

// 文字列関数
strlen("テキスト"); // 長さ
str_replace("古", "新", "文字列");

// 配列関数
count($array); // 配列の要素数
array_push($array, "新要素");

// 日付と時刻
date("Y-m-d"); // 2025-03-23

関数名は小文字またはスネークケースです。

PHPには1000以上の組み込み関数があります。

PHP公式マニュアルが非常に役立ちます。