前回までに、プログラミングには「5つの共通概念」があることを学びました。
そして、JavaScriptでの書き方もマスターしましたね。
今回からは「PHP(ピーエイチピー)」の世界に入ります。
PHPはサーバー(裏側)で動く言語ですが、基本的なロジックはJavaScriptと同じです。
ただ、「方言(文法)」が少し強いので、JavaScriptとの違いを比べながら見ていきましょう!
目次:PHP文法 答え合わせ
0. 必須のルール:魔法のタグ
JavaScriptは <script> タグの中に書きましたが、PHPは以下のタグの中に書きます。
これがないと、ただの文字として画面に出てしまうので注意!
<?php
// ここにPHPのコードを書く
?>
※文末の セミコロン ; は絶対に必須です!
(JSは忘れても動くことがありましたが、PHPは真っ白な画面になってエラーになります)
1. 変数:お金じゃないけど「$」をつける
PHP最大の特徴です。
変数の名前には、必ず先頭に $(ドルマーク) をつけます。
| 言語 | 書き方 |
|---|---|
| JavaScript | let score = 100; |
| PHP | $score = 100; |
let や const などの宣言は不要です。
いきなり $名前 と書けば変数になります。
2. 出力と文字連結:一番の罠!
画面に文字を表示する命令と、文字同士をくっつける記号がJSとは違います。
ここが初心者が一番間違えやすいポイントです。
画面への表示
console.log ではなく echo(エコー) を使います。
echo "こんにちは";
文字の合体
JavaScriptは「+(プラス)」でしたが、PHPは「.(ドット)」です!
$name = "田中";
// ❌ JS式(PHPでは計算扱いになってエラーになる!)
// echo "こんにちは" + $name;
// ⭕️ PHP式
echo "こんにちは" . $name . "さん";
3. 条件分岐:ほぼ同じだけど…
if 文の書き方はJavaScriptと99%同じです。
$score = 80;
if ($score >= 80) {
echo "合格!";
} elseif ($score >= 60) {
echo "惜しい!";
} else {
echo "不合格…";
}
細かい違い:
「そうでないもし」を書くとき、JSでは else if(スペースあり)ですが、PHPでは elseif(1単語) と書くのが一般的です。
4. 繰り返し:最強の「foreach」
JavaScriptの for...of にあたるのが、PHPの foreach(フォーイーチ) です。
PHPで開発をするなら、これを使わない日はありません。
書き方(ここが逆!)
JSとは「箱」と「中身」を書く順番が逆なので注意してください。
$fruits = ["りんご", "みかん", "バナナ"];
// foreach ($配列の箱 as $中身の変数)
foreach ($fruits as $fruit) {
echo $fruit . "を食べます<br>";
}
「$fruits を $fruit として(as)扱う」と読むと覚えやすいです。
5. 関数:引数にも「$」を忘れずに
function というキーワードは同じです。
ただし、カッコの中の引数(ひきすう)にも $ が必要です。
function greet($name) {
echo "ようこそ、" . $name . "さん!";
}
greet("佐藤"); // 呼び出し
まとめ:JSとの違いリスト
最後に、JavaScript経験者がPHPを書くときに気をつけるべきポイントをまとめました。
| 項目 | JavaScript | PHP |
|---|---|---|
| 変数宣言 | let name = ... |
$name = ... |
| 文字の結合 | "A" + "B" |
"A" . "B" |
| 表示 | console.log() |
echo |
| ループ | for (x of list) |
foreach ($list as $x) |
特に「変数の$」と「結合のドット」。
この2つさえ間違わなければ、あなたはすぐにPHPを書けるようになります!
📝 今日のミニテスト
PHP脳に切り替わったかチェック!
Q1. 変数「price」を作る正しい書き方は?
正解:$price
letやconstは不要ですが、ドルマーク($)は絶対必要です。
Q2. 文字列「Hello」と 変数 $name を結合する記号は?
正解:ドット( . )
"Hello" . $name と書きます。プラス(+)を使うと計算しようとしてエラーやバグになります。
Q3. 配列の中身を順番に取り出す、PHPで一番よく使う構文は?
正解:foreach
foreach ($items as $item) の形を指が覚えるまで練習しましょう!