日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

Windows下适用于PHP 7.1的memcache扩展工具编译

發布時間:2024/9/19 php 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Windows下适用于PHP 7.1的memcache扩展工具编译 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

項目里需要PHP支持memcache擴展,首先來介紹一下memcache是啥吧

介紹
memcache是一套分布式的高速緩存系統,由LiveJournal的Brad Fitzpatrick開發,但目前被許多網站使用以提升網站的訪問速度,尤其對于一些大型的、需要頻繁訪問數據庫的網站訪問速度提升效果十分顯著。

memcache經常和memcached混淆,其實memcache只是一個擴展工具,使得PHP可以連接到memcached服務器,高速緩存服務由memcached服務器來提供,在Windows下,要使用memcached高速緩存,必須同時安裝PHP下的memcache擴展和memcached服務器。

php_memcache.dll編譯和安裝
添加Windows下PHP的memcache擴展,首先應該了解到的一點是:

Windows下PHP的擴展工具都是*.dll文件,存儲在PHP安裝目錄下的ext文件夾中,想要開啟擴展,必須在ext文件夾中有相應的dll文件,并且在php.ini文件里面加入相應的配置,格式舉例如下:?
extension=php_memcache.dll

由于php_memcache.dll的官方編譯出來的版本支持到PHP 5.6就斷了,幸運的是,雖然放出的已編譯版本停了,但是源碼還在更新,并且支持了7.1,所以,之前配置了PHP 7.1.4的博主我就只好操起不熟練的VS 2015命令行進行編譯適合自己的php_memcache.dll了。

編譯前的下載

想要編譯最新的php_memcache.dll,必不可少的當然是它的源碼啦,下載地址如下:?
https://github.com/websupport-sk/pecl-memcache

還需要編譯環境,博主之前裝的VS 2015這時候就起作用了,沒有裝VS 2015的朋友可以去官網下一個,反正community版本不需要付費,常用功能一個也沒少,下載地址如下:

ed2k://|file|cn_visual_studio_community_2015_with_update_3_x86_x64_dvd_8923246.iso|7633565696|605D19028916D09E1BFA2DABBD266FE9|/
1
編譯環境有了,還需要有PHP的sdk,不然還是編譯不了,下載地址如下:?
http://windows.php.net/downloads/php-sdk/?
下載圖中所示的兩個文件?


最后一個需要下載的是你所使用的PHP的源碼,下載地址如下:?
http://windows.php.net/downloads/releases/?
在這里找到你當前版本對應的src文件,例如我所需要的是php-7.1.4-src.zip

編譯前的目錄準備

1、創建一個用于編譯的目錄,例如 E:\PHPCompile

2、解壓php-sdk-binary-tools-20110915.zip里面的文件到PHPCompile目錄下;

3、編輯 E:\PHPCompile\bin\phpsdk_buildtree.bat,在 GOTO EXIT 前增加代碼:

MD %_%\vc14\x86\deps\bin
MD %_%\vc14\x86\deps\lib
MD %_%\vc14\x86\deps\include
MD %_%\vc14\x64\deps\bin
MD %_%\vc14\x64\deps\lib
MD %_%\vc14\x64\deps\include
1
2
3
4
5
6
注:這是因為phpsdk_buildtree.bat比較舊(畢竟2011年的古董),還不支持VC14,因此需要添加代碼讓其支持 VC14

4、在開始菜單找到并打開 VS2015 x64 本機工具命令提示符(注:如果要編譯32位的,則需進入VS2015 x86 本機工具命令提示符),用cd 命令進入 E:\PHPCompile,執行如下兩條命令:

bin\phpsdk_setvars.bat?
bin\phpsdk_buildtree.bat phpdev?
1
2
5、執行后,目錄下會生成phpdev文件夾;

6、 進入D:\PHPCompile\phpdev\vc14\x64\,把deps-7.1-vc14-x64.7z解壓到該目錄下,覆蓋deps文件夾

7、 把php源代碼也解壓到x64目錄下,將解壓后的目錄名改為PHP7

8、在x64目錄下創建pecl文件夾,在該文件夾下再建立memcache文件夾,將下載的memcache代碼解壓到這個目錄下,再在x64目錄下創建obj文件,用來存放編譯后的文件

編譯

在剛才的 VS2015 x64 本機工具命令提示符執行以下命令,用于創建php編譯配置:

cd phpdev\vc14\x64\php7?
buildconf?
configure --help >..\configure_help.txt?
configure --disable-all --enable-cli --enable-zlib --enable-hash --enable-session --without-gd --with-bz2 --enable-memcache=shared --enable-object-out-dir=..\obj
1
2
3
4
如果提示bison.exe不存在,執行如下命令,再重新執行上面的命令:

set path=%path%;E:\PHPCompile\bin
1
如果不出意外,此時就可以使用如下命令來進行編譯工作了:

nmake
1
這里經常會出問題,具體問題需要大家根據錯誤原因自行百度解決方法,當問題都解決了之后,就可以在E:\PHPCompile\phpdev\vc14\x64\obj\Release_TS\下找到php_memcache.dll了。

安裝

復制php_memcache.dll到PHP\ext下,然后在php.ini里面找到一堆extension,在后面添加如下配置:

extension=php_memcache.dll
1
之后可以重啟Apache服務器,然后訪問http://localhost/phpinfo.php,如果里面已經有memcache擴展信息的話就安裝成功了,如果沒有信息,那就檢查一下是位置沒放對或者php.ini沒有編輯好還是其他原因。

memcached服務器的安裝
下載?
下載地址:http://pan.baidu.com/s/1gdKbp8R

安裝

1、解壓下載后的文件,把它放到一個目錄中,如D:\memcached。

2、打開cmd,進入memcached解壓后存放的目錄,運行命令:

? ? ? ?memcached.exe -d install

? ? ? ?如果沒有意外的話已經安裝成功了。
1
2
3
3、測試是否安裝成功:輸入memcached –h

如果出現如下圖所示即為安裝成功(版本號可能不同)?


4、啟動memcached:在 memcached 的目錄下輸入 memcached.exe -d start

測試

此時在任務管理器中應該可以看到memcached.exe這個進程在運行
在服務中,應該可以看到多了個memcached服務,并且已經啟用
打開cmd,運行命令:
? telnet 127.0.0.1 11211
1
即可連接memcached。輸入Version和Status可以查看版本號和狀態

至此,php的memcache擴展工具以及memcached高速緩存服務器已經安裝完成,項目可以正常運行了
?

總結

以上是生活随笔為你收集整理的Windows下适用于PHP 7.1的memcache扩展工具编译的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。