9core.com - 九核技术交流网

九百链
为了更好的解决实际工作中遇到的问题,本站开设了QQ群 ASP+PHP+JSP+.NET①:9793624
ASP+PHP+JSP+.NET②:17775294
网站通告: 新开设QQ群,群号:17775294 九核WEB技术专业论坛 官方QQ群 9793624
搜索: 您的位置主页> 程序开发 > Php技术 >阅读资讯: 如何编译PHP源代码

如何编译PHP源代码

文章来源:互联网 发表时间:2008-09-12 点击次数

综述:我们将要介绍Zend公司的最新工具ZendEncoder,利用这个工具,我们就可以实现编译PHP,从而达到保护PHP源代码的目的。

如何安装ZendEncode?

一、先去www.zend.com去注册一个用户https://www.zend.com/add_user.php

二、在你的注册信箱里得到登录名和密码后,从https://www.zend.com/login.php登录,如果成功则会自动跳转回Zend的首页,这时点击首页右上边的导航栏里的Store,然后再点击EnterpriseProducts,再点击ZendEncoderUnlimited,然后再点击右边的Price:$2400下面有一个Testdriveavailable的链接,进去后再点击右侧下方的Testdriveavailable按钮,这时候我们会看到Zend的相关产品,选择ZendEncoderUnlimitedTestDrive右边的GetIt(播放按钮)

三、看到Download后,点击Step2:RequestProductLicense,这时候Zend需要我们提供一个hostid号,这个是标识你的电脑的唯一标识符,你可以点击右边的HowdoIfindmyhostID链接,去下载一个查看标识符的软件,如果你是WINDOWS用户,可输入以下命令得到你的网卡内部号:

ipconfig/all

然后会得到有这么一串字符:PhysicalAddress......:00-80-C8-DB-FC-39

这样把-号去掉,得到你的HOSTID号为0080C8DBFC39,然后把这段字符拷贝到EnterhostID:的输入框里,点击Request这个链接,然后系统会把你这台机器的许可协议发送到你的信箱里。

四、等一段时间后,在你的信箱里可以看到标题为Zendlicensescreated的一封信,去http://www.zend.com/store/pickup.php这个地方取许可协议,这个时候你的机器上已经存在着Zend那个网站的COOKIE。所以进去后选Step3:DownloadProductLicense,在边上会有黑体写的DownloadLicense,点击下载名叫zend_encoder.dat的许可协议,然后再选择Step1:DownloadtheZendEncoderUnlimitedTestDrivev.1.1.0,选择你需要的版本,我是用WindowsNT/2K(forPHP4.0.3/4.0.4)的,又是一封长长的ZendEncoder?TestDriveLicenseAgreement(许可协议书),按下"IACCEPT"按钮后开始下载ZendEncoderUnlimited程序。

如何配置ZendEncode?

一、解压ZendEncoderUnlimited-TestDrive-1[1].1.0-PHP_4.0.3-Windows-i386.zip到c:\programfiles\ZendEncoderUnlimited目录,然后把zend_encoder.dat这个文件拷到c:\programfiles\Zend目录下,运行c:\programfiles\ZendEncoderUnlimited目录下的install_license.reg注册表,成功后你就可以用zendenc.exe这个程序来编译php源文件了,格式如下:zendenc源文件名编译后文件名(还有许多参数可自己查看帮助)

二、现在需要从http://www.zend.com/store/free_download.php?pid=13这里下载ZendOptimizer?v.1.0.0,然后将下载后的ZendOptimizer-1[1].0.0-PHP_4.0.4-Windows-i386.zip解压到C:\ProgramFiles\ZendOptimizer目录下。

三、修改php.ini文件,增加两行

zend_optimizer.optimization_level=15
zend_extension_ts="c:\programfiles\zendoptimizer\zendoptimizer.dll"
四、重启你的WEB SERVER,然后用PHPINFO输出看一下,会有这么一段:

ThisprogrammakesuseoftheZendscriptinglanguageengine:
ZendEnginev1.0.4,Copyright(c)1998-2000ZendTechnologies
withZendOptimizerv1.0.0,Copyright(c)1998-2000,byZendTechnologies
记住,有最后一行withZendOptimizerv1.0.0,Copyright(c)1998-2000,byZendTechnologies的才表示你的ZendOptimizer安装成功了

如何使用ZendEncoder?

写一个测试的phpinfo.php文件:

<?
phpinfo();
?>
然后用zendencphpinfo.phpphpinfoencode.php

得到一个编译过的phpinfoencode.php文件,打开看里面的代码已经变成这样了:

Zend20001120011139265x??2??~佒?ス箷z?)E惺?元5韺爕穯圽R怮悪棖)?a虲P纈爂li`if
錽?A毱LF?n?l&r閅殮?4?21a?6舶446┐児%5B?唴?蔯?
在浏览器里执行这个phpinfoencode.php文件,发现头部多了GeneratedbyaTRIALVERSIONoftheZendEncoder(TM)这一行。CVLl5BJURhL0vwTosRKk

bSxfAlY9KxgpJpoP1Qn6CVLl5BJURhL0vwTosRKk
Php
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助