web-dev-qa-db-ja.com

PHPのMemcacheD拡張モジュールDLL for Windows

私のPHP 5.6サイトで、私は Memcache 拡張機能を使用してmemcachedデーモンとのインターフェースをとっています。拡張機能に一致するDLLがあるため、私のWindows開発マシンも同様で、すべて良かったです。

ただし、この拡張機能は廃止されており、PHP7の公式サポートはありません。代わりに MemcacheD 拡張に移動したいと思います。問題は、ウィンドウが見つからないことですDLLこれのバージョンです。StackOverflowに5年前の this post がありますが、それが見つからないため、何もありません。

Windows DLLをビルドする 公式の計画はありません があるようですが、PHPは コンパイル方法 (助けなしでできる)、PHP 7.2と互換性のあるソースを他の誰かが知っていることを望んでいる

2
BeetleJuice

php7.0.x、php7.1.x、php7.2.xのphp_memcache.dllを見つけてください https:// github .com/nono303/PHP7-memcache-dll

  • vc14vc15
  • x86x64
  • tsnts

memcachedはWindowsでは機能しないため、新しいlibmemcached拡張機能はWindowsでは機能しません。しかし、誰かが古いmemcache拡張機能をWindowsにインストールしたようです。 Niceプリコンパイル済みバイナリは見つかりませんが、何度も調べたところ、この問題について PHPバグレポート が見つかりました。誰かが解決策を見つけたようです:

[2016-01-20 23:11 UTC] php at alternize dot com

gitリポジトリのブランチ「NON_BLOCKING_IO_php7」 https://github.com/websupport-sk/pecl-memcache.git win32 x86スレッドセーフモードでphp 7.0.2に対して正常にビルドされます。私はそれを非スレッドセーフやx64でテストしていません。

php_memcache.dllを構築するために、私は https://wiki.php.net/internals/windows/stepbystepbuild#building_pecl_extensions を使用して次の指示に従いました:

C:\php-sdk\phpdev\vc14\x86\php-7.0.2-src>buildconf
C:\php-sdk\phpdev\vc14\x86\php-7.0.2-src>configure --disable-all 
  --enable-cli --enable-zlib --enable-hash --enable-session 
  --without-Gd --with-bz2 --enable-memcache=shared
C:\php-sdk\phpdev\vc14\x86\php-7.0.2-src>nmake
1
Elias Nicolas