(注:記事は執筆時の情報に基づいており,現在では異なる場合があります)

 Webアプリケーション開発用のスクリプト言語PHP(現在はHypertext Preprocessorの略とされている)が誕生したのは1994年。もはやホビー向けという初期の印象は薄れています。企業システムへの採用も増え,2002年には,米Yahooが自社サイトの開発言語にPHPを採用したというニュースが流れました。インターネット上のWebサーバーを調査している英Netcraftによると,2002年11月時点で,世界中に約990万のPHPを使用したドメイン(Webサイト)があるといいます(http://www.php.net/usage.php)。

PHPのどこがいいのか

 なぜPHPが注目されるのでしょうか。

 まず「オープンソース・ソフトウエアである」という点が大きいでしょう。ソースコードを修正できるため,プログラマが必要に応じて修正しやすく,またセキュリティ・ホールが見つかっても修正が早い,ということが挙げられます。

 「マルチプラットフォームである」という点も見逃せません。 WindowsでもUNIX/LinuxでもMacintoshでも動作します。

 「言語仕様がC言語などと似ている」点は,現役プログラマが学習するにあたってありがたいことでしょう。オブジェクト指向プログラミングも可能なので,再利用性やメンテナンス性の高いコードを書くこともできます。

 「Oracle,SQL Server,MySQL,PostgreSQLなどの各種データベースと親和性が高い」点は,開発/運用の面から重要ですし,「WebサーバーApacheと親和性が高い」点は,CGI(Common Gateway Interface)プログラムより高速に実行できるというメリットがあります。

 そもそも「Web開発に特化している」ことや,スクリプトは市販のテキスト・エディタで記述できるので「特別な開発ツールを必要としない」ことも,Webアプリケーションの開発者が気軽に取り組める一因でしょう。

 あと筆者の個人的意見として付け加えるならば,「適度にやさしく,適度に難しい」ことも,プログラマのやる気をそそるうえでポイントが高い点です。

今年も続くPHPのバージョンアップ

図1●PHPの最近のバージョンアップ動向

 では,PHPを選択するうえでデメリットはないのでしょうか。確かにPHPはメリットの多い言語ですが,逆にオープンソース・ソフトウエアならではの問題もあります。それは,バージョンアップが早いということです。

 バージョン間では,内部的に大きな変更やバグ修正があり,前バージョンのPHPスクリプトが実行できない可能性があるのです。こういったリスクをデメリットと考えると,PHPの選択に不安が出てくるかもしれません。

 しかし筆者は,バージョンアップを待って,PHPプログラミングのチャンスを逃すことのほうこそリスクがあると思います。今後PHPはますますWebアプリケーションの開発シーンに登場してくるでしょう。それなら,できるところから始めておいたほうが,新版が出てから勉強するより効率がいいというものです。何よりPHPプログラミングを“楽しむ”機会を逃すのがもったいないですからね。

 なお本セミナーは記事掲載時の最新バージョンであるPHP 4.2.3を対象としています

PHPはサーバーサイド・スクリプト

図2●PHPがWebアプリケーションとして動作する仕組み

 PHPのメリット/デメリットがわかったところで,実際にPHPが動作する仕組みを説明しておきましょう。

 スクリプト言語というと皆さんは,HTMLコードに埋め込まれたJavaScriptやVBScriptをイメージするかもしれません。しかし,それらは基本的にWebブラウザ上で動かすような使い方がほとんどです。これに対しPHPは,Webサーバー上で実行するように設計されています。自分のパソコン上にあるPHPスクリプト(拡張子 .phpのファイル)をダブルクリックしても,PHPは実行しません。必ずWebサーバー経由でアクセスする必要があります。したがってPHPは,(サーバー上で実行する)「サーバーサイド・スクリプト言語」なのです。

 図2[拡大表示]は,PHPを使ったWebアプリケーションが動作するイメージです。Webブラウザから「http://サーバー名/~/PHPスクリプト名」などとしてWebサーバーにアクセスすると,Webサーバー側でPHPのスクリプトが起動します。スクリプト内に,データベースなどを扱う処理が書かれていればその処理を行い,結果をHTMLコードにしてWebブラウザに返すわけです。

 PHPは,Webサーバーとデータベースやファイル/外部プログラムをつなぐ「糊」のようなものだと思えばいいでしょう。

本セミナーの読み方

 最後に,本セミナーの読み方を説明しておきます。

 本セミナーは,PHPの基礎的な技術情報を,インストール,文法,基本処理,バージョンアップの注意,データベース処理,オブジェクト指向プログラミング,セキュリティ,テンプレートと八つのテーマに分類し,それぞれステップ1~8の章で解説しています。皆さんがPHPに対して知っている,あるいは知りたいレベルに応じて,好きなステップから読み始めてください。ただし,各ステップで解説しているサンプルを実際に動かして確かめたい場合には,環境設定の関係上,ステップ1から順番に読み進めてください。

 また本セミナーでは,大多数の皆さんが使っているであろうWindowsマシンでの実行をベースに解説しています。Windowsのバージョンによっては,ライセンスの制約から,Webサーバー,データベース・サーバー,Webアプリケーションなどを運用できない場合があるので,Windowsマシンでの実行は動作確認にとどめ,実運用時は,Linux環境へ移行するか,レンタル・サーバーなどを利用することをお勧めします。

 では,楽しいPHPの世界へ,いざスタートです!

(真島 馨=日経ソフトウエア)