【2021/10/15 追記】
この記事は更新が停止されています。PHP を分かった気になって書いていた不正確な内容が多いため,過去の情報として参考程度にご覧ください。また,完成にたどり着けなかったことをお詫びします。原則的には,公式マニュアルの参照をおすすめします。
目次に戻る
PHP言語の特徴
HTMLの中に埋め込むことが出来る
PHPファイルは、何も特別なことを書かなければただのHTMLファイルと同じ扱いを受けます。
<div><?php echo 1 + 1; ?></div>
<div>2</div>
のように <?php
と ?>
で囲んで、初めてそこでPHPのコードを記述できるようになります。 echo
は指定したものを文字列として書き出す (出力する) 構文です。
<div><?php
echo 1 + 1;
?></div>
<div><?php
echo 1 + 1;
?></div>
としても結果は同じです。PHPタグ内でのこういった改行・半角スぺース・タブ文字は無視されます。しかし、
<div>
<?php
echo 1 + 1;
?>
</div>
のようにした場合はどうなるでしょうか?
<div>
2
</div>
となると予想されると思いますが、実際には
<div>
2</div>
となります。なぜなら終了タグ直後の改行コードは削除されるという特性を持っているからです。これは後々説明しますが、これによって得られるメリットがちゃんとあるので今は素直に受け止めてください。
なお、
<?php
echo 1 + 1;
?>
のようにPHPコードだけを記述する場合、後ろのタグは省略して
<?php
echo 1 + 1;
とすることが出来ます。実は省略する方が推奨されています。
サーバー側でコードが実行される
イラスト中のコードを注意してみてください。そして、ユーザー側からはPHPコードが見えないことに気付いてください。ここがPHPとよく対比されるJavaScriptとの違いです。
PHP | JavaScript | |
---|---|---|
コードがユーザーから見えるか | 見えない | 見える |
リロードせずに何かを行えるか | 行えない | 行える |
実行される場所 | サーバー上 | ユーザーのブラウザ上 |
根本的に役割が全く異なるのです。違う見方で言えば、 組み合わせれば便利 であるとも言えます。この講座では触れませんが、JavaScriptが主体的にPHPスクリプトにAjaxリクエストを送り、連携を取るという形が多くのサイトで実装されています。
Webページ制作という目的に特化している
JavaやC++はWindows上で動く事務ソフトウェアを開発したり、ゲームを開発したり、応用範囲が非常に広いですが、PHPで出来ることはかなり限られてきます。
- ユーザーからのリクエストに応じてHTMLを動的に生成して返す
- サーバー上でデータを保存したり読み込んだりする
大部分はこれらに該当するでしょう。しかし、先ほど述べたように「HTMLの中に簡単に埋め込める」という独特の強みを持っており、これらの目的に絞った仕事を行いたい場合は非常にラクに実装することが出来るでしょう。
言語のもとの名前がクソダサい
もともとは Personal Home Page の略だったらしいです。現在は PHP - Hypertext Processor という無理矢理とってつけたような形になってしまっています。