PHP講座入門

PHPの動作

ブラウザでウェブページを見るとき

 例えば、Yahoo!を見ようとすると、ブラウザのアドレスバーのところに、http://www.yahoo.co.jpと入力します。(「http://」は省略してもブラウザが勝手に付けてくれます)そうすると、Yahoo!のトップページが表示されます。

 これには色々なことが関係してくるのですが、話を極端に単純化します。

 

figure1

 この図はhttp://example.com/hello.htmlを表示した時の動作を単純化したものです。順を追って説明します。

  1. まず、あなたがブラウザのアドレスバーにhttp://example.com/hello.htmlを入力しエンターキーを押します。
  2. それはネットワーク(インターネット)を通してサーバーと呼ばれるコンピューターに到達します。
  3. そのサーバーはハードディスクの所定の場所からhello.htmlを取り出して、ネットワークに送り返します。
  4. あなたのブラウザはそのhello.htmlを受け取り、解析してから表示します。

 こんな感じに動作しています。要するにはhello.htmlというテキストファイルをサーバーから取り出して、表示しているだけです。

 ではPHPではどう違うのでしょうか?

ブラウザでPHPのページを見るとき

 ここでも図を用いて考えてみましょう。

figure2

 この図はhttp://exapmle.com/hello.php?name=hogeを表示した時の動作を単純化したものです。上の図とだいぶ似ています。基本的な動作は上の例と変わらないからです。順を追って説明しましょう。

  1. まず、あなたがブラウザのアドレスバーにhttp://exapmle.com/hello.php?name=hogeと入力しエンターキーを押します。
  2. それはネットワークを通してサーバーに到達します。
  3. サーバーはハードディスクの所定場所からhello.phpを取り出し、いろいろなデータと共にPHPに渡します。
  4. PHPはhello.php実行します。
  5. サーバーは実行結果(HTML)をネットワークに送り返します。
  6. あなたのブラウザはその実行結果(HTML)を受け取り、解析してから表示します。

 このようになっています。

 サーバーはhello.phpを取り出した後PHPに渡しますが、その時にhttp://exapmle.com/hello.php?name=hoge このname=hogeの部分も一緒に渡します。

 PHPはhello.phpを読みますが、その中に、「nameを表示しろ」という命令が書かれています。先ほどサーバーからname=hogeという情報を貰っていますので、nameの部分にhogeを入れたHTMLを生成し、サーバーに返します。

 当然、このname=hogeの部分をいろいろ変えることで、動的に表示されるものが変わるのです。

 

 どうでしょうか?大体の動作原理がお分かりになったでしょうか?

目次

×