在PHP-5.2.x以前的PHP版本使用,用優化代碼的方法來提高PHP應用程序的執行速度,理論上要比不使用ZO要快40%-100%。實現的原理是對那些在被最終執行之前由運行編譯器(Run-Time Compiler)產生的代碼進行優化。(來自百科)而且在PHP-5.2.x之前只有通過官方Zend Optimizer才能運行經Zend Guard加密和混淆的PHP代碼。
PHP-5.3.x之後的PHP版本使用,加強對PHP商用代碼的保護,並提高PHP的執行性能,其前身就是Zend Optimizer。
能夠在共享內存中儲存預編譯的PHP腳本,以提高PHP的執行性能,從而使得不用每次請求都要加載與解析PHP腳本。PHP-5.5以後,已捆綁和PHP一起發布。
eAccelerator 是一個免費開源的PHP加速、優化、編譯和動態緩存的項目,它可以通過緩存PHP代碼編譯後的結果來提高PHP腳本的性能,eAccelerator 通過把經過編譯後的PHP代碼緩存到共享內存中,並在用戶訪問的時候直接調用從而起到高效的加速作用,雖然是一個好項目,但是已經幾年沒有更新了,最新版本支持php-5.4,當然是官方說的。
將PHP代碼直接編譯為opcode代碼,其實也是一種加密PHP代碼的機制了,因為只需要再進一步將opcode代碼簡單的序列化或者混淆,然後在Zend虛擬機執行之後,反解為opcode代碼即可。但是加密的目的是為了避免源代碼被分析的可能;而opcode是為了提高程序的運行速度。
總結:如果要選擇OPcode那就直接用PHP官方推薦的OPcache吧,如果你的是商業PHP代碼,在PHP-5.2.x之前選擇是Zend Optimizer,但是PHP-5.3+的版本就需要使用Zend Guard Loader了。值得注意的是PHP加密並優化之後,還可以選擇一種Opcode緩存。