|
||||||||||||
| 1 2 3 次のページ | ||||||||||||
| Zend Engineと連係する周辺のモジュール | ||||||||||||
|
「第1回:意外と知らないZend Engine」では、Zend EngineがPHP実行環境の根幹であることを紹介しました。 第2回目となる今回は、Zend Engineと連係する周辺のモジュールに関して紹介します。これらのモジュールは、PHPの機能を補完や拡充する役割を担います。 |
||||||||||||
| 基本的なモジュール | ||||||||||||
|
まずは、Zend Engineと連係するベーシックなモジュールから紹介します。図1は、Zend CoreでインストールしたPHP環境の情報です。 図1の環境では、Zend Engine以外に表1のようなモジュールがロードされています。これらのモジュールは、Zend Engineと連係してPHPを強化するものです。
表1:Zend Engine以外のモジュール |
||||||||||||
| Zend Extension Manager | ||||||||||||
|
Zend Extension Managerは、PHPのバージョンに応じて異なるモジュールをロードする機能を提供します。 PHPはバージョンに応じて仕様が異なっており、連係するためのモジュールもバージョンごとに変更する場合があります。特にZend Engineと密接に連係するモジュールは大きく影響を受けます。 |
||||||||||||
| Zend Optimizer | ||||||||||||
|
Zend Optimizerは、大きく分けて2つの機能を提供しています。 1つ目は、PHPコードの最適化を実施し、効率化をはかる機能です。Zend Optimizerを導入した環境では、数%程度の高速化を実現できます。特にループや条件分岐を多用したPHPコードに効果があります。 もう1つの機能は、中間コード化、暗号化および難読化したPHPコードを実行する機能です。PHPコードのセキュリティソリューションZend Guardにより、通常のPHPのソースコードを3種類の形式にエンコード(変換)します。
表2:Zend GuardのPHPコード変換概要 なお、これらのエンコード済みPHPコードを実行するには、PHP環境にZend Optimizerを導入する必要があります。 中間コード化されたPHPコードは実行コードに翻訳済みなので、デコード処理のみでランタイムコンパイラを介さずにエグゼキュータに渡され処理が実行されます。そのため高速で処理が実行できるのです。 |
||||||||||||
| Zend Debugger | ||||||||||||
|
Zend Debuggerは、統合開発環境Zend Studioとネットワーク上で連係して、デバックを行うためのモジュールです。 開発者は手元のPCで実行しているZend Studioから、PHPサーバ上で実行しているPHPコードの実行を制御(ブレイク、ステップ実行など)することが可能です。ブレイク中は、変数に格納された値の参照や設定、PHPコードコールトレースなどの実行状況の参照が可能です。 またZend DebuggerはPHPコードの実行時間の統計を実施するプロファイラ機能も提供します。プロファイラでは、複数のPHPコードから1つのWebページを作成する処理でも、各PHPコード別の実行時間の割合をグラフで表示することができます。 またユーザ関数やクラスごとの実行時間を、実行順序の通りに表示することも可能です。 |
||||||||||||
|
1 2 3 次のページ |
||||||||||||
|
|
||||||||||||
|
|
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
||||||||||||






