1、创建编译目录“C:\php_sdk”
2、解压php-sdk-binary-tools-20110915zip里面的文件到php_sdk目录下
3、在开始菜单找到并打开Windows SDK CMD Shell (注意一定是SDK的shell , 不是DOS *** 作的cmd窗口),然后执行
[plain] view plaincopy
setenv /x86 /xp /release //这一句一定要执行成功,要不怎么都不会编译成功
cd php_sdk
bin\phpsdk_setvarsbat
bin\phpsdk_buildtreebat phpdev
执行后,目录下会生成phpdev文件夹
4、进入C:\php_sdk\phpdev\vc9\x86\,把deps-53-vc9-x867z解压到该目录下,覆盖deps文件夹。(php sdk)
5、把php源代码也解压到x86目录下。
6、把runkit压缩包内容解压到php解压后源码下的ext目录下,并把文件夹名runkit-master改为runkit
7、在x86目录下创建obj文件夹,用于保存编译时生成的文件
8、执行以下命令,用于创建php编译配置
[plain] view plaincopy
cd phpdev\vc9\x86\php53-201308211030
buildconf
configure --help >\configure_helptxt
configure --disable-all --enable-cli --enable-runkit=shared --enable-object-out-dir=\obj
注:配置中的--enable-runkit=shared意思是 memcache 以 dll 形式生成,否则就和php集成在一起了。
要安装那个xampp开发包,不然编译php扩展的时候会出错。
在windows和linux 下安装一些程序或者php的扩展资料很多,而关于mac最新版1074的资料极少。
顺便提下mac的好用的安装工具,一个是MacPort,一个是Homebrewmacport可能被墙,安装时可能会卡住。
首先你要有windows2003和iis60(60以下就免谈了)。
然后要安装的东东依次为:php52,mysql50,phpmyadmin211
这些东西一个个去找实在是太麻烦了,幸好我们有wamp。
只要学会了安装wamp,那么就只剩下“配置”了。
下面所有牵涉到的文件路径都以wamp为准,php在wamp中的目录为wamp\bin\php\php525。
要让iis能够解析php,首先要把phpini复制到c:\windows目录下,把php5isapidll复制到c:\windows\system32下。
然后从windows2003的管理工具中进入iis,新添加一个web服务扩展,扩展名可以任意填写,比如说“php服务扩展”,要求的文件则是php5isapidll,勾上“设置扩展状态为允许”。
然后新建一个网站,假设已经有了一个网站,右键“属性”,为网站创建一个“应用程序池”,执行权限为“脚本和可执行程序”,点击“配置”,添加一个
“应用程序扩展”,在新d出的窗口中,可执行文件选择刚才的php5isapidll(最好是c:\windows\system32下的),”扩展
名”为php,动作限制为“get,head,post,trace”,勾去“确认文件是否存在”
ok,这样php就基本上配置好了,可以去网站根目录下创建一个indexphp,写入“
php
phpinfo();”,然后打开浏览器测试一下就可以了。
首先你必须修改phpini,找到extension_dir这个参数,假设wamp安装在d盘,改成
extension_dir
=
“d:\wamp\bin\php\php525\ext\”,然后找到extension=php_mysqldll和
extension=php_mysqlidll,确保他们之前的逗号已经去掉。
接下就是关键了,在wamp\bin\php\php525目录下有一个关键的文件libmysqldll,昨天困扰了许久,才想起以前配置
mysql的惨痛经历(都是wamp惹的祸,把php/mysql的安装搞的太简单了),这个文件一定要复制到c:\windows\system32目
录下去,否则就算在phpini里面打开extension=php_mysqldll也没有用,当浏览需要连接mysql的页面时,会报错说
“mysql”类型不存在。
我们就遇到了这样一个实际问题:54上已经在运行asp以及aspnet的网站,iis抢占了80端口,apache就不能使用了,这样难道你要别人在
单,在wamp中找到>
单项加密比较容易。最简单的就是md5。还有mcrypt加密函数库。
base64不能算做加密,只能算是转码。因为别人可以直接用base64_decode得到原文。
mcrypt有双向加密揭秘的函数。但是,mcrypt扩展并不是每个服务器都会有的。
DISCUZ自带了一个双向加密函数,推荐使用:
<php
#加密
$code = authcode("everalan", 'ENCODE');
#解密
$username = authcode($code, 'DECODE');
function authcode($string, $operation, $key = '') {
$auth_key = !empty($key) $key : '你自己定义的key';
$key = md5($auth_key);
$key_length = strlen($key);
$string = $operation == 'DECODE' base64_decode($string) : substr(md5($string$key), 0, 8)$string;
$string_length = strlen($string);
$rndkey = $box = array();
$result = '';
for($i = 0; $i <= 255; $i++) {
$rndkey[$i] = ord($key[$i % $key_length]);
$box[$i] = $i;
}
for($j = $i = 0; $i < 256; $i++) {
$j = ($j + $box[$i] + $rndkey[$i]) % 256;
$tmp = $box[$i];
$box[$i] = $box[$j];
$box[$j] = $tmp;
}
for($a = $j = $i = 0; $i < $string_length; $i++) {
$a = ($a + 1) % 256;
$j = ($j + $box[$a]) % 256;
$tmp = $box[$a];
$box[$a] = $box[$j];
$box[$j] = $tmp;
$result = chr(ord($string[$i]) ^ ($box[($box[$a] + $box[$j]) % 256]));
}
if($operation == 'DECODE') {
if(substr($result, 0, 8) == substr(md5(substr($result, 8)$key), 0, 8)) {
return substr($result, 8);
} else {
return '';
}
} else {
return str_replace('=', '', base64_encode($result));
}
}
可以肯定的是,你不需要用C++
这个是php扩展库支持。
在phpini里面可以看到952行。
extension=php_rardll
;extension=php_bz2dll
extension=php_curldll
;extension=php_dbadll
;extension=php_exifdll
;extension=php_fileinfodll
extension=php_gd2dll
;extension=php_gettextdll
;extension=php_gmpdll
;extension=php_intldll
;extension=php_imapdll
;extension=php_interbasedll
extension=php_ldapdll
extension=php_mbstringdll
;extension=php_mingdll
;extension=php_mssqldll
extension=php_mysqldll
extension=php_mysqlidll
;extension=php_oci8dll
;extension=php_oci8_11gdll
extension=php_openssldll
;extension=php_pdo_firebirddll
;extension=php_pdo_mssqldll
extension=php_pdo_mysqldll
;extension=php_pdo_ocidll
;extension=php_pdo_odbcdll
;extension=php_pdo_pgsqldll
extension=php_pdo_sqlitedll
;extension=php_pgsqldll
;extension=php_phardll
;extension=php_pspelldll
;extension=php_shmopdll
;extension=php_snmpdll
;extension=php_soapdll
extension=php_socketsdll
;extension=php_sqlitedll
;extension=php_sqlite3dll
;extension=php_sybase_ctdll
;extension=php_tidydll
;extension=php_xmlrpcdll
;extension=php_xsldll
;extension=php_zipdll
extension= php_memcachedll
每一行前面分号去掉的表示开启扩展库的。
有些扩展库是安装的时候默认开启的,有些需要手动开启。
还有一些扩展库需要自己去下载库文件(要对应相应的版本)
下载的库文件放在php安装根目录下面的ext目录下面。当然这个目录也是可以自己配置的。
第一步:在百度中搜索Phalcon,一般第一个网站,进入网站,我们点击网站首页的download,目前该框架的最近版本是20
接着 我们找到我们的系统 这里我建议选用二进制的源码编译安装!
然后 我们根据网站上的提示 下载该框架托管在github上面的二进制源码,如图所示,(使用git命令时需要安装yum install git)
使用putty连接我们的linux系统 在linux系统/usr/local/src/下面输入步骤三上的命令 稍等片刻源码就会下载下来
源码下载完毕后会有一个cphalcon目录 我们用命令行切换到/usr/local/src/cphalcon/build
用vi编辑器打开install文件 按照下图配置 选择php-config(php安装位置各有不同)默认install 没有选择php-config的位置所有我们要自己动手
编辑完成 直接执行/install 动态编译加载php扩展
编译完成后打开phpini文件添加phalcon的扩展 在phpini中添加下图的扩展即可
最后一步php探针验证 !大工告成!
环境:win81系统 wampsever(忘了版本号,里面是Apache2417+Mysql579+PHP5616&700)
1先看看phpinfo中有没有mbstring。
如何看phpinfo?打开记事本,写如下代码
<php
phpinfo();
>
保存为phpinfophp,放到wamp安装目录的>
以上就是关于如何在windows环境下编译生成PHP的zookeeper扩展dll全部的内容,包括:如何在windows环境下编译生成PHP的zookeeper扩展dll、xampp下的php连接ibm db2,下载了扩展包,询问扩展包存放路径、php程序怎么部署运行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)