Phpでmemcachedを使用するための php.net の例を貼り付けました。
Fatal error: Class 'Memcache' not found
私はphp.iniにこれを持っています:
[memcache]
memcache.hash_strategy = "consistent"
memcache.max_failover_attemps = 100
memcache.allow_failover = 1
それぞれphp -iとphp -mからの情報は次のとおりです。
php -i | grep -i memcache
memcached
memcachedサポート=>有効
libmemcachedバージョン=> 0.37
登録済み保存ハンドラー=>ファイルユーザーsqlite memcachedphp -m | grep -i memcache
memcached
したがって、phpはmemcachedをモジュールとしてロードしたように見え、php infoはそれがロードされ、v .37を使用していると言います。私はまだApache経由で試したことはありません。今はcli経由でしか使っていません。何かご意見は?
受け入れられた答えがコメントで言っていることを否定して、「Memcache」をインストールする正しい方法は次のとおりです。
Sudo apt-get install php5-memcache
NOTE MemcacheとMemcachedは2つの異なるソフトウェアですが、関連するソフトウェアであり、しばしば混同されます。
EDITこれは古い投稿なので、php5をphpのバージョン番号に置き換える必要があることに言及する価値があると思いました。
この投稿で解決策を見つけました: https://stackoverflow.com/questions/11883378/class-memcache-not-found-php#=
PHP 5.4.4の作業DLLファイルを見つけました
私はそれらがどれほど安定しているかは知りませんが、確実に機能します。クレジットはこのリンクに移動します。
http://x32.elijst.nl/php_memcache-5.4-nts-vc9-x86.Zip
http://x32.elijst.nl/php_memcache-5.4-vc9-x86.Zip
これは2.2.5.0バージョンで、コンパイル後に気付きました(PHP 5.4.4の場合)。
2.2.6ではなく動作することに注意してください。また、自分のFTPでそれらをミラーリングしました。ミラーリンク:
http://mustafabugra.com/resim/php_memcache-5.4-vc9-x86.Ziphttp://mustafabugra.com/resim/php_memcache-5.4-nts-vc9-x86。 Zip
権利はphp_memcache.dllです。私の場合、vc6コンパイラの代わりにvc9でコンパイルされたlibを使用していました。 apatcheエラーログには次のようなものがあります:
PHPスタートアップ:sqlanywhere:モジュールを初期化できませんビルドID = API20090626、TS、VC9でコンパイルされたモジュールPHPビルドID = API20090626、TS、VC6でコンパイルされたこれらのオプションは一致する必要があります
同じログがあるかどうかを確認し、異なるコンパイラでコンパイルされた異なるdllをダウンロードしてみてください。
OSXユーザーの場合:
次のコマンドを実行して、Memcachedをインストールします。
brew install memcached