デバッグ テクノロジーはプログラミングに不可欠かつ重要な部分であり、デバッガーはすべての IDE 環境に必要なコンポーネントです。この場合、Zend Studio の統合環境にはデバッガが備わっているのは当然ですが、デバッガを設定して使用すると、その強力な機能に驚かされることでしょう。
実は、Zend Studio (以下、ZDE) のデバッグ機能は、内部デバッグとリモートデバッグに分かれています。内部デバッグは、ZDE の組み込み PHP (バージョン 4 および 5 で利用可能) を使用した予備的なコード デバッグです。これは、実際の動作環境を完全にシミュレートできるため、リモート デバッグに重点を置いています。
リモート デバッグにはサーバー側コンポーネントのサポートが必要です。今日の内容は、このサーバー側デバッグ環境をインストールする方法です。この記事の執筆時点では軽量で十分なバージョンの Zend Debugger を使用します。は 5.2.14 で、インターネット上で広く流通している 5.2.10 バージョンでわずかに更新されています。私のサーバーは Windows 上の Apache なので、Windows バージョンの Zend Debugger をダウンロードしました。圧縮されたパッケージは約 2.1M で、readme.txt を読む必要があると思います。
<ol class="dp-xml"> <li class="alt"><span><span>Zend Debugger installation instructions </span></span></li> <li><span>————————————— </span></li> <li class="alt"><span>1. Locate ZendDebugger.so or ZendDebugger.dll file that is compiled for the correct version of PHP </span></li> <li><span>(4.3.x, 4.4.x, 5.0.x, 5.1.x, 5.2.x) in theappropriate directory. </span></li> <li class="alt"><span> </span></li> <li><span>2. Add the following line to the php.ini file: </span></li> <li class="alt"> <span>Linux and Mac OS X: </span><span class="attribute">zend_extension</span><span>=/full/path/to/ZendDebugger.so </span> </li> <li> <span>Windows: </span><span class="attribute">zend_extension_ts</span><span>=/full/path/to/ZendDebugger.dll </span> </li> <li class="alt"> <span>Windows non-tread safe: </span><span class="attribute">zend_extension</span><span>=/full/path/to/ZendDebugger.dll </span> </li> <li><span>(*) the windows non-thread safe is used only with Zend Core 2.0 </span></li> <li class="alt"><span> </span></li> <li><span>3. Add the following lines to the php.ini file: </span></li> <li class="alt"> <span class="attribute">zend_debugger.allow_hosts</span><span>=</span><span class="tag"><</span><span class="tag-name">ip_addresses</span><span class="tag">></span><span> </span> </li> <li> <span class="attribute">zend_debugger.expose_remotely</span><span>=</span><span class="attribute-value">always</span><span> </span> </li> <li class="alt"><span> </span></li> <li><span>4. Place dummy.php file in the document root directory. </span></li> <li class="alt"><span> </span></li> <li><span>5. Restart web server. </span></li> <li> </li> </ol>
これは非常に詳細です。インストール方法についてはすでに説明しましたが、私の曖昧な言語でもう一度説明させてください。 以下は、圧縮パッケージ内のすべてのファイルのリストです:
<ol class="dp-xml"> <li class="alt"><span><span>ZendDebugger-5.2.14RC9-cygwin_nt-i386md5 </span></span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i386Inventory.xml </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3864_3_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3864_3_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3864_4_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3864_4_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_0_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_0_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_1_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_1_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_2_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_2_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_2_x_nts_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_2_x_nts_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i386dummy.php </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i386README.txt </span></li> <li> </li> </ol>
現在の My PHP バージョンに対応する適切な Zend Debugger バージョンを解凍します。は5.2.5なので、5_2_x_compをドラッグして(5_2_x_nts_compはノントレッドセーフを指しますが、具体的な用途がわからないので無差別に使用しません)、5_2_x_compZendDebugger.dllをD:myserverZendDebugger5_2_xZendDebuggerに移動しました。 dllを作成し、圧縮パッケージ内のdummy.phpをWebルートディレクトリに解凍します。ここではApacheのDocumentRootがD:/myserver/wwwrootに設定されているので、dummy.phpをD:myserverwwwrootにコピーし、php.iniを修正します。内容:
<ol class="dp-xml"> <li class="alt"><span><span class="attribute">zend_extension_ts</span><span>=</span><span class="attribute-value">D</span><span>:/myserver/ZendDebugger/5_2_x/ZendDebugger.dll </span></span></li> <li> <span class="attribute">zend_debugger.allow_hosts</span><span>=</span><span class="attribute-value">127</span><span>.0.0.1/32,192.168.1.88/24 </span> </li> <li class="alt"> <span class="attribute">zend_debugger.expose_remotely</span><span>=</span><span class="attribute-value">always</span> </li> <li class="alt"><span> </span></li> </ol>
その後、しばらく待った後、phpinfo()を入力して成功したかどうかを確認します。