Edited at

【PHP入門講座】 PHPで出来ることと処理の流れ

More than 5 years have passed since last update.


目次に戻る


PHP言語の特徴


HTMLの中に埋め込むことが出来る

PHPファイルは、何も特別なことを書かなければただのHTMLファイルと同じ扱いを受けます。


PHPコード

<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;

とすることが出来ます。実は省略する方が推奨されています


サーバー側でコードが実行される

下図のような流れとなります。

icon_4b_192.png

イラスト中のコードを注意してみてください。そして、ユーザー側からはPHPコードが見えないことに気付いてください。ここがPHPとよく対比されるJavaScriptとの違いです。

PHP
JavaScript

コードがユーザーから見えるか
見えない
見える

リロードせずに何かを行えるか
行えない
行える

実行される場所
サーバー上
ユーザーのブラウザ上

根本的に役割が全く異なるのです。違う見方で言えば、 組み合わせれば便利 であるとも言えます。この講座では触れませんが、JavaScriptが主体的にPHPスクリプトにAjaxリクエストを送り、連携を取るという形が多くのサイトで実装されています。


Webページ制作という目的に特化している

JavaやC++はWindows上で動く事務ソフトウェアを開発したり、ゲームを開発したり、応用範囲が非常に広いですが、PHPで出来ることはかなり限られてきます。


  • ユーザーからのリクエストに応じてHTMLを動的に生成して返す

  • サーバー上でデータを保存したり読み込んだりする

大部分はこれらに該当するでしょう。しかし、先ほど述べたように「HTMLの中に簡単に埋め込める」という独特の強みを持っており、これらの目的に絞った仕事を行いたい場合は非常にラクに実装することが出来るでしょう。


言語のもとの名前がクソダサい

もともとは Personal Home Page の略だったらしいです。現在は PHP - Hypertext Processor という無理矢理とってつけたような形になってしまっています。