Zend Encode的工作原理
使用PHP的人都知道,它是一個腳本編程工具,用它寫的程序,必須以源碼的形式放置在Web服務器上,所以我們無法保護自己的源代碼。大家都知道任何一個腳本程序的執行效率同具有相同功能的編譯好的二進制代碼相比較,它的執行效率都是比較低的。那麼要是有一個工具能夠幫我們把用PHP寫的程序編譯成二進制代碼就好了,這樣不但執行效率提高了,
運行速度也加快了。真要是有這麼一個工具,那就是一舉兩得了。
現在這不是夢想了,Zend Encode就是為此而開發的,它可以直接將腳本編譯成二進制碼。有了Zend Encode,你就可以將自己寫好的PHP程序,編譯後分發給很多用戶,而用不著公開自己的源程序代碼。編譯好的二進制代碼可以被Zend Optimizer透明讀取,也就是說,客戶只要在他的服務器上安裝Zend Optimizer就可以執行由Zend Encode編譯好的PHP程序。編譯程序中包含有Zend Optimizer的部分代碼,所以編譯過程中對程序代碼進一步作了優化處理,這即意味著腳本的執行效率提高了。
從一定意義上講,Zend Encode是一個“PHP編譯器”。但是,它又不是一個真正意義上的編譯器,因為真正編譯完成的程序可以脫離原來的編譯環境運行,而Zend Encode編譯過的程序,需要有Zend Optimizer的支持。就像編譯好的Java二進制代碼,需要JVM的支持。所以,Zend Optimizer可以看作是PHP編譯好代碼的虛擬機。不管怎麼說,它們要通過相互配合使用。
目前Zend Encode支持的操作系統有:Solaris、Linux、FreeBSD及Windows。Zend Encode可以直接運行,電腦系統中不一定非要安裝PHP。
Zend Encode的安裝
先去下載一個軟件包吧!Zend Encode不是自由軟件,使用它要付費,而且價格相當高。幸好zend.com提供了一個可供試用的軟件包,用戶可以免費試用30天。這個軟件包可以直接從www.zend.com上獲得。所以,首先要到www.zend.com上下載Zend Encode、Zend Optimizer軟件包。其次,要下載一個授權文件license。由於Zend Encode是一個授權使用的產品,所以需要用戶從zend.com上申請一個license。申請步驟如下:
要申請一個試用的license,需要向zend.com提供你正在使用的計算機的ID,也即在申請頁中填寫host ID(實際上就是你計算機上的網卡的MAC地址)。查看計算機ID的方法如下:從zend.com下載一個lmutil.z的程序,解壓後得到程序lmutil,運行它,它會根據系統的硬件特征產生一個序列串。將這個序列號填入到申請license頁的host ID中,zend.com會在48小時內為用戶生成一個license,下載此license文件,文件名為zendEncode.dat,它只能在這台電腦上使用。