2009-11-18 9 views
31

Xdebugをpeclからインストールしたときに、php.iniファイルに次の行が追加されました。php.iniの拡張とzend_extensionの違いは何ですか?

extension="xdebug.so" 

と私が使用したものがすべて使用されました。今日まで。

今日、私はインタラクティブなデバッグのためにXdebugをセットアップするのに問題がありました。私は

に上記を変更するまで、私が働いて何かを得ることができませんでした
zend_extension="/usr/local/lib/php/extensions/xdebug.so" 

(警告:私はこれは私が働いて得たものであるを考えるが、私は確信して100%ではないよ)これは上げ

を私の心の質問。 extension=zend_extensionの間の内線番号の読み込みの違いは何ですか?

+0

下にして下さい。奇妙なことに、 'extension = xdebug.so'はxdebug_break()を使ってリモートデバッグすることができましたが、IDEブレークポイントは使用できませんでした。 –

答えて

18

Zendが開発した "Zend Engine"と呼ばれるソフトウェア(インタプリタ、バイトコードコンパイラ)は、PHP言語のコア(言語が単なる仕様であるため、インタープリタに似ています)です。

このコアを使いこなすすべてのモジュールは、 "zend_extension"としてインストールする必要があります。

あなたの問題を解決するには、この試行を無視して、設定している拡張機能のドキュメント(http://www.xdebug.org/docs/install)を参照してください。

30

Zend_extentionsは、Zend Engine自体に組み込まれている拡張機能に属します。 zendエンジン自体に組み込まれているPHP。このエンジンは、PHPスクリプトを解析、解釈、実行します。エンジンを変更すると、PHPの作業方法が変更されます。

次のメッセージが両方の拡張種類のものの多くを共有するPHP

の拡張子と代替としてzend_extensionの主な違いを説明します。両方のタイプの違いは、主にエンジンに登録するフックにあります。非常に珍しいにもかかわらず、拡張機能はPHP拡張機能とZend拡張機能の両方に同時に使用できます。 Xdebugは良い例です。

は確かに私も指示を読み取ることができなかった主なスキーマの画像 enter image description here

For more detail refer this link

+0

私はZend Extensionsをphpに静的にコンパイルすることはできないと私に説明した詳細なリンクを理解しています。 –

関連する問題