PHPXref是一個十分優秀的PHP開發工具,它能將某一個程式(如Wordpress)中所有的函數、變數、常數等分類記錄,產生一個HTML網頁列表,你可以輕鬆地在這個列表中找到某個函數在什麼位置被定義,在什麼位置被引用。這一點無論是對於一個Wordpress外掛開發者,或是想學習研究Wordpress的人都是十分有用的。
PHPXref官方有個已經製作好的Wordpress的分析文檔: http ://phpxref.com/xref/wordpress/ ,此外,PHPXref還製作了多種PHP程式的分析文檔,有興趣的可以Google站內搜尋一下。
PHPXref的主要功能包括
1.檔案管理。無論要找什麼文件,用它能很快地搜尋到,如果你的文件中有符合語法規則的註釋,PHPXref還能將它列在文件名的旁邊,更容易了解這個文件的功能用途,也不用為了找一個文件翻遍整個資料夾,打開每個文件查找註解了。
2.函數、變數、常數、類別管理。 Wordpress內建了多種功能強大的函數、類,無論是字元處理還是遠端URL讀取等都有現成的函數,但我們往往不知道這個函數能在Wordpress裡面找到,現在容易多了,搜尋一下就找到了,如果在開發過程中遇到某個Wordpress函數,不知道它是做什麼用的,這時候就得找到這個函數在哪裡定義的,可是Wordpress裡面上百個文件上哪找去?還是用PHPXref好了。
3.文件包含管理。 Wordpress需要很多include,require包含別的文件,但偶爾也會遇到重複包含導致出錯,雖然require_once可以解決,但我們也最好要了解某個腳本包含了哪些文件,要調用這個文件時也心中有數。 PHPXref提供了每個檔案的包含檔案清單和被包含的檔案。
4.原始碼高亮。這個功能也是比較實用的,但在實際測試中偶爾會出錯。
5.出色的關聯功能。在瀏覽原始碼時,將滑鼠指到某個函數名,就會在滑鼠旁邊出現函數的定義頁面,以及被使用次數,此外,還對使用較多的變數名,也是可以直接有個頁面顯示所有的關於這個變數的使用情況。
既然PHPxref那麼強大,該如何使用呢?
1.首先,從SF下載最新的程序,現在的版本是0.7,下載那個win32的版本就好了。下載後解壓縮出來。
2.phpxref目錄下有一個source 的資料夾,這是存放原始碼的資料夾,把另外下載的Wordpress原始碼放到這裡來,請注意,不要把wordpress/這整個目錄放進來,而是裡面的檔案放進來就行了,確保以source/index.php,source/wp-content/ ..這樣的格式就行。
3.執行可執行檔phpxref.exe ,將進行產生文件的工作,這個過程大約需要1分鐘左右,由於需要高頻率讀取硬碟和大量計算消耗CPU資源,請暫停其他工作。
4.提示成功後,output 這個目錄下就是所有的文檔了,建議在本地上用XAMPP進行調試,把整個output 資料夾搬到xampp的htdocs 的目錄下,再把名字改為好記的phpxref ,這樣,就可以透過http://localhost/phpxref/訪問了。效果和http://phpxref.com/xref/wordpress/的是一模一樣,當然,速度快了很多。
PHPXref還提供了在Linux下產生文件的版本,但我很少用Ubuntu,也沒有去Ubuntu下測試了,我想更多數人需要的還是Win系統下的,如果有需要,把Win下生成的文件可以搬到伺服器上去供大家訪問,還可以在頁面下方放點Google Adsense廣告賺點外快。但PHPxref產生的文檔實在太大了,一個1.2MB的Wordpress(壓縮包),解壓縮後再生成文檔,居然要80多MB的位置!壓縮完後也需要接近20MB,所以我打消了把它放在自己伺服器上的願望(說不定製作重複的鏡像還會被搜尋引擎處罰)。
除了用PHPXref來產生已有的Wordpress或其他PHP示範程序(如Discuz)進行學習外,用PHPXref來產生自己製作的PHP 程序,進行檢驗錯誤或是整理程式碼資源也很有用。我從學PHP至今大概寫過5個比較大型的程式(我認為算比較大型了,但沒有一個是成型的商業產品),幾乎也是寫了5次的郵件地址驗證函數,用戶名驗證函數,密碼驗證函數,MySQL類別…看來還得用PHPXref來整理資源了。
在使用PHPxref之前,我還讀過awflasher.com提供的簡介,特此感謝。