PHPの特徴
1.2 PHPの特徴
PHP(ピー・エイチ・ピー)は、ハイパーテキスト プリプロセッサ(Hypertext Preprocessor)の略で、広く使われているオープンソースの汎用スクリプト言語です。もともとは、製作者のRamus Lerdorfさんが個人で使うために作ったプログラムに「Personal Home Page Tools」と名付け、それがPHPと呼ばれるようになったのが始まりです。
現在(2024年2月現在)、PHPはVer 8.1.17までリリースされており、オブジェクト指向の機能が強化され大規模なシステム開発にも適応しやすいものとなりました。今日も様々な人が協力して、次のバージョン(PHP6)の開発準備が着々と進められています。
1.2.1 PHPの特徴
PHPの主な特徴として、以下の4つが挙げられます。
1 HTML埋め込み型のプログラミング言語
2 サーバサイドスクリプト言語
3 オープンソース
4 数多くの機能が装備されている
これらについて、簡単に説明していきます。
・ 1 HTML埋め込み型のプログラミング言語
普段我々がインターネットを利用して見ているページは、HTML文書で書かれた情報がWebブラウザ(IE、Chrome、Firefox等)を介して表示されているものですが、PHPのプログラムはHTML文書の中に部分的に埋め込んで記述します。
この埋め込んだプログラムの処理によりWebアプリケーションの表示内容を状況に応じて変化させることができます。PHPはこのような方式を取っているので、Webアプリケーションの作成に向いていると言われています。(HTMLに関しては後の節で改めて説明します)
図 1.2.1 PHPはHTMLに埋め込み型
・ 2 サーバサイドスクリプト言語
HTML文書内に埋め込まれたPHPのプログラムは、Webサーバが動いているコンピュータで実行されます。Webサーバとは、Webブラウザからの要求を受け付け、HTML文書や画像などのデータをWebブラウザに送り返すソフトウェアです。本テキストでは「Apache(アパッチ)」と呼ばれるWebサーバを利用していきます。
PHPはこのようにWebサーバ側のコンピュータで実行されるので、サーバサイドスクリプト言語と呼ばれます。
図 1.2.2 スクリプト言語の動作
・ 3 オープンソース
PHPの本体になるプログラムのソースコードは公開されており(オープンソース)、誰でも機能を改良したり拡張したりすることができるので、比較的簡単に始めることができます。
・ 4 数多くの機能が装備されている
PHPではWebアプリケーションの開発に必要な多くの機能が、拡張モジュール(部品のようなもの)という形式で用意されています。データベース操作、メール送受信、日付操作、文字列操作など、全ては挙げられないほど数多くあり、これらを利用することで目的にあったプログラムを簡単に作成することが可能になります。
1.2.2 WebサーバとWebクライアント
「PHPのプログラムはWebサーバが動作しているコンピュータで実行されます」と説明しましたが、Webサーバと対になってよく出てくる「Webクライアント」についても知っておきましょう。
・ Webサーバ(Apache)
PHPなどのスクリプト言語を動作させ、ホームページデータをWebクライアント(ブラウザ)に送信します。
・ Webクライアント(IE、Google Chrome、firefoxなどのWebブラウザ)
Webサーバからのデータ(ページ情報)を受け取り画面に表示します。
例えば、Webブラウザから神田ITスクールのWebサイトにアクセスしたとします。Webサーバ側ではWebサーバというソフトウェアが必ず動作しています。Webブラウザから要求されたWebページのHTML文書や画像などのデータをWebブラウザに応答として送信を返します。その結果を問題なくWebブラウザが受け取ることができれば神田ITスクールのWebページを見ることができるのです。
図 1.2.3 WebサーバとWebクライアント
1.2.3 静的なページと動的なページ
一般的に、HTML文書のみで記述された、何度アクセスしても内容に変化のないWebページを「静的なページ」と呼びます。対して、HTML+PHP言語で記述されて、アクセスする度に変化があるWebページを「動的なページ」と呼びます。Webブラウザへ表示する内容を自由に変えられることが「プログラム(PHPで)を行う意味」と言えます。
図 1.2.4 静的なページと動的なページの違い