PHP Hypertext Preprocessor
出典: フリー百科事典『ウィキペディア(Wikipedia)』
改名:この記事のタイトルに関して議論や投票が行われています。詳細はこの項目のノートを参照してください。 |
画像:PHP logo.svg | |
パラダイム: | 命令型, オブジェクト指向 |
---|---|
開発者: | The PHP Group |
最新リリース: | 5.2.0 / 2006年10月2日 |
型付け: | 弱い動的型付け |
影響を受けた言語: | Perl, C |
プラットフォーム: | cross-platform |
ライセンス: | PHP License |
ウェブサイト: | http://www.php.net/ |
PHP(ピー・エイチ・ピー)は、動的にHTMLデータを生成することによって、動的なウェブページを実現することを主な目的としたプログラミング言語、およびその言語処理系である。
PHPは、HTML埋め込み型のサーバサイド・スクリプト言語として分類される。この言語処理系自体は、C言語で記述されている。
ウェブサーバ上で動作し、ウェブサーバ上の文書が要求されるたびに、この文書に記述されたPHPのプログラムを実行し、その結果をウェブブラウザに対して送信する。
ウェブブラウザに送信されるデータは通常のHTMLであり、PHPのプログラムを含まない。この点でHTML埋め込み型のクライアントサイド・スクリプト言語(JavaScriptなど)と本質的に異なっている。
目次 |
[編集] 仕様
PHPは、PHP4以降Zend Engineをコアエンジンとして利用している。Zend Engineは、PHP3の開発者によって設立されたZend Technologies Ltd.により開発されたオープンソースのスクリプトエンジンで、PHP5ではZend Engine 2.0になった。
PHPは、単独のプロセスとしてインタプリタを動かすが、Apache HTTP ServerなどのWebサーバのモジュールとして動作させる場合の方が主流である。一般的なCGIの場合は1リクエストに対し1プロセスが発生するため、多量のリクエスト時はサーバに負荷がかかるが、ウェブサーバのモジュールとして動作させる場合は、Webサーバの一機能として動作することから負荷が少ない。しかしその反面、エラー時にはサーバー全体へ影響を及ぼすという欠点もある。Windows、UNIXなどのオペレーティングシステムに対応した処理系が存在する。
HTML埋め込み型の処理系としては他にASP、JSPなどがある。しかしASPはマイクロソフト社のWindows NT系OSに搭載されるInternet Information Serverでしか機能しないのに対し、PHPならびにJSPではそれを含むWebサーバに対応する。
また、多くのDBMSへのインターフェイスを標準で備えており、DBMSとの連携にも高い力を発揮する。
PHPには様々な付加機能がPEARというオンラインライブラリ集でモジュールとして提供されており、同名のツールを使って導入/管理が出来る。Perlで言うCPANと同じ役割を持っている。
[編集] 構文
多くの構文をC言語、Java、Perlなどのプログラミング言語から転用しており、動的に生成させるウェブ・ページを速やかに作成できるのが特徴である。ウィキ構築に用いられるソフトの一つであるMediaWikiは、PHPによって書かれている。
[編集] PHPによる有名なソフト
[編集] 対応する主要DBMS
- Apache Derby
- DB2
- Infomix
- InterBase
- mSQL
- MySQL
- ODBC
- Oracle
- PostgreSQL
- Sybase
- SQLite
[編集] フレームワーク
- CakePHP
- Code Igniter
- Ethna
- eZ components
- Maple
- Mojavi
- Omusuvi
- Peewee
- prado
- PHP on TRAX
- Seasar.PHP
- Seagull
- symfony
- Zend Framework
- WACT
- Zoop
- ちいたん
- xFramework
[編集] 歴史
[編集] PHP/FI
1995年に、ラスマス・ラードフが開発。当初はPerlでかかれたスクリプトだったが、その後C言語で書き直され、PHP (Personal Home Page Tools) となる。その後 FI(Form Interpreter、SQLによるDBMSツール)が統合され、1997年にPHP/FI2.0となる。
[編集] PHP3
その後PHP/FIを元に、アンディ・ガトマンズ (Andi Gutmans) と ゼーブ・スラスキー (Zeev Suraski) によってPHP3(PHP:Hypertext Preprocessor)が再度書き直され、1998年にリリースされる。
[編集] PHP4
2000年にリリース。PHP3を大幅に機能拡張。Zend Engine導入。
[編集] PHP5
2004年にリリース。擬似的なオブジェクト指向がより一層強化され、SQLiteが標準装備されるようになった。Zend Engine 2.0導入。