ユウチャオ yuchao86@gmail.com
PHP-5.3.8 ソース コードに基づいて、PHP スクリプトの実行プロセスをよりよく理解し、効率的なスクリプトを作成できるように、PHP の核となる構造を共有します。
ディレクトリ構造は次のとおりです:
1. Build は、コンパイル処理用の wk、awk、sh スクリプトが含まれるコンパイルに関連するディレクトリです。m4 ファイルは、Linux 上のコンパイラによって自動的に生成されるファイルです。buildconf コマンドを使用して、特定の設定ファイルを操作できます。
2. Mysql、gd、zlib、xml、iconv およびその他のよく知られた拡張ライブラリなどの ext 拡張ライブラリ コード ext_skel は Linux では拡張機能生成スクリプトであり、ext_skel_win32.php スクリプトは Windows で使用されます。
各拡張機能ディレクトリには、php_extension.c ファイルと phpt バッチ テスト スクリプトが含まれています。3. php.h、main.c、logos.h 配列などを含むメイン ディレクトリは、PHP プログラムの主要部分であり、プログラムの SAPI インターフェイスなどのグローバル変数を定義します。
4. netware ネットワーク ディレクトリ。以前のバージョンにはこのディレクトリはありません。sendmail_nw.h と start.c という 2 つのファイルがあり、それぞれ SOCK 通信に必要なヘッダー ファイルと特定の実装を定義します。
5. pear 拡張パッケージ ディレクトリ (PHP Extension and Application Repository の略称)、install-pear.txt ファイルには特定の拡張パッケージのインストール方法が詳しく記載されています。ご自身で確認してください。
6. Sapi と、一般的な fastcgi、cgi などだけでなく、Apache、IIS などのさまざまなサーバー間のインターフェイス呼び出し。Apache のソース コードを見たことがある場合、このディレクトリは次のように一目瞭然です。 apache_hooks や apache2handler など。
7. Linux の script スクリプト ディレクトリ。
8. テスト テスト スクリプト ディレクトリ (主に phpt スクリプト) は、--TEST--、--POST--、--FILE--、--EXPECT-- の 3 つの部分で構成されます。一部を初期化する必要がある場合は、--INI-- 部分を追加できます。
9. TSRM Thread Safe Resource Manager、Thread Safe Resource Manager の略称。PHP のソース コードを調べると、これが随所にあり、シングル スレッド モデルとマルチ スレッド モデルでスレッドの安全性とコードの一貫性を確保していることがわかります。
10. Win32 ディレクトリで、Windows 上で PHP 関連のスクリプトをコンパイルし、WSH を使用します。
11. Zend フォルダーのコア エンジン。PHP ライフ サイクル、メモリ管理、変数の定義と割り当て、関数マクロの定義などを含みます。
もっと良い意見がある場合は、議論するためにメールに返信してください、ありがとう