PHP は何でもできます。 PHP は主にサーバー側のスクリプトに使用されるため、フォーム データの収集、動的な Web ページの生成、Cookie の送受信など、他の CGI プログラムで実行できるあらゆる作業を PHP を使用して実行できます。しかし、PHP の機能はそれをはるかに超えています。
PHP スクリプトは主に次の 3 つの領域で使用されます:
PHP は、Linux、Unix のさまざまなバリアント (HP-UX、Solaris、OpenBSD を含む)、Microsoft Windows、Mac OS X、RISC OS などを含む、すべての主要なオペレーティング システムで使用できます。現在、PHP はすでに、Apache、Microsoft Internet Information Server (IIS)、Personal Web Server (PWS)、Netscape、iPlant サーバー、Oreilly Website Pro Server、Caudium、Xitami、OmniHTTPd などを含むほとんどの Web サーバーをサポートしています。ほとんどのサーバーでは、PHP がモジュールを提供します。一部の PHP は CGI 標準をサポートし、PHP が CGI プロセッサとして動作できるようにします。
要約すると、PHP を使用すると、オペレーティング システムと Web サーバーを自由に選択できます。同時に、開発中にプロセス指向、オブジェクト指向、またはその 2 つの混合の使用を選択することもできます。 PHP 4 はすべての OOP 標準をサポートしているわけではありませんが、多くのコード リポジトリと大規模なアプリケーション (PEAR ライブラリを含む) は OOP コードのみを使用して開発されています。 PHP 5 は、PHP 4 のこの弱点を補い、完全なオブジェクト モデルを導入しています。
PHP の使用は HTML の出力に限定されません。 PHP を使用して、画像、PDF ファイル、さらには Flash アニメーション (libswf と Ming を使用) を動的に出力することもできます。 XHTML などのテキストやその他の形式の XML ファイルを簡単に出力することもできます。 PHP はこれらのファイルを自動的に生成し、サーバー上で動的コンテンツのキャッシュを開いて、直接印刷したり、ファイル システムに保存したりできます。
PHP の最も強力で注目すべき機能の 1 つは、幅広いデータベースのサポートです。ユーザーは、PHP を使用してデータベースを利用した Web ページを驚くほど簡単に作成できることに気づくでしょう。現在、PHP は次のデータベースをサポートしています:
PDO と呼ばれるデータベース抽象化拡張ライブラリもあります。これを使用すると、拡張ライブラリでサポートされているデータベースを自由に使用できます。さらに、PHP はオープン データベース接続標準である ODBC もサポートしているため、この世界標準をサポートする他のデータベースに接続できます。
- アダバスD
- dBase
- 皇后
- FilePro (読み取り専用)
- ハイパーウェーブ
- IBM DB2
- インフォミックス
- イングレス
- インターベース
- フロントベース
- mSQL
- ダイレクト MS-SQL
- MySQL
- ODBC
- Oracle (OCI7 および OCI8)
- オブリモス
- PostgreSQL
- SQLite
- しっかり
- サイベース
- ベロシス
- Unix DBM
PHP は、LDAP、IMAP、SNMP、NNTP、POP3、HTTP、COM (Windows 環境) およびその他無数のプロトコルを利用するサービスもサポートしています。他のプロトコルを連携できるように、生のネットワーク ポートを開くこともできます。 PHP は、すべての Web 開発言語間の WDDX 複雑なデータ交換をサポートしています。相互接続に関しては、PHP はすでに Java オブジェクトへのインスタント接続をサポートしており、それらを PHP オブジェクトとして自由に使用できます。 CORBA 拡張ライブラリを使用してリモート オブジェクトにアクセスすることもできます。
PHP には非常に効率的なテキスト処理機能があり、POSIX 拡張機能や Perl 正規表現から XML ドキュメント解析まであらゆるものをサポートしています。 XML ドキュメントを解析してアクセスするために、PHP 4 は SAX および DOM 標準をサポートしており、XSLT 拡張ライブラリを使用して XML ドキュメントを変換することもできます。 PHP 5 は、強力な libxm2 に基づいてすべての XML 拡張機能を標準化し、SimpleXML および XMLReader のサポートを追加して、XML の機能を拡張します。
さらに、他にも興味深い拡張ライブラリがたくさんあります。例えば、mnoGoSearch検索エンジン機能、IRCゲートウェイ機能、各種圧縮ツール(gzip、bz2、zip)、カレンダー変換、翻訳...
PHP が提供するすべての機能と利便性をここでリストすることは不可能であるため、ここで説明されている拡張ライブラリの詳細については、インストールおよび関数リファレンスの章を参照してください。