search
LoginSignup
24

More than 1 year has passed since last update.

posted at

updated at

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

【2021/10/15 追記】
この記事は更新が停止されています。PHP を分かった気になって書いていた不正確な内容が多いため,過去の情報として参考程度にご覧ください。また,完成にたどり着けなかったことをお詫びします。原則的には,公式マニュアルの参照をおすすめします。

目次に戻る

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 という無理矢理とってつけたような形になってしまっています。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
24