facebook twitter hatena line email

「Php/memcachedメモ」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(php8対応)
行68: 行68:
  
 
===php8対応===
 
===php8対応===
 +
<pre>
 
ini_set('session.save_handler', 'memcached');
 
ini_set('session.save_handler', 'memcached');
 
ini_set('session.save_path', "localhost:11211?persistent=1&weight=1&timeout=1&retry_interval=15");
 
ini_set('session.save_path', "localhost:11211?persistent=1&weight=1&timeout=1&retry_interval=15");
 +
</pre>
  
 
==memcache管理ツール==
 
==memcache管理ツール==
 
  http://livebookmark.net/memcachephp/memcachephp.zip
 
  http://livebookmark.net/memcachephp/memcachephp.zip
 
*参考:http://d.hatena.ne.jp/shimooka/20080522/1211434381
 
*参考:http://d.hatena.ne.jp/shimooka/20080522/1211434381

2026年4月7日 (火) 21:47時点における版

memcachedダウンロード

http://jehiah.cz/projects/memcached-win32/ からバイナリをダウンロード

memcachedのサービス登録

cd D:\memcached-1.2.1-win32
memcached.exe -d install

memcachedのサービス削除

memcached.exe -d uninstall

memcachedのサービス実行

memcached.exe -d start

memcachedスタートバッチ(以下をmemcached_start.batで保存

d:
cd D:\memcached-1.2.1-win32
memcached.exe -d start

phpにmemcache導入

php.iniで以下追加

extension=php_memcache.dll

memcacheの.dllを以下からダウンロードし

http://museum.php.net/php5/pecl-5.2.6-Win32.zip D:\php-5.2.6\extへ入れapache再起動。

http://shikii.net/blog/downloads/php_memcache-cvs-20090703-5.3-VC6-x86.zip (php5.3時

memcacheサンプル

<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");
$version = $memcache->getVersion();
echo "Server's version: ".$version."<br/>\n";
$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;
$memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 10 seconds)<br/>\n";
$get_result = $memcache->get('key');
echo "Data from the cache:<br/>\n";
var_dump($get_result);
?>

memcachedサンプル

$mc = new Memcached();
$mc->addServer("localhost", 11211);
$mc->set("foo", "Hello!");
$mc->set("bar", "Memcached...");
$arr = array(
    $mc->get("foo"),
    $mc->get("bar")
);
var_dump($arr); 

sessionをmemcacheで使用

以下コードのみ設定し、普通にsessionを使えば、すぐ使える

ini_set('session.save_handler', 'memcache'); //これはmemcachedでなくmemcacheの方を使っている。
ini_set('session.save_path', 'tcp://localhost:11211');

memcacheをmemcachedで仕様

ini_set('session.save_handler', 'memcached'); //これはmemcacheでなくmemcachedの方を使っている。
ini_set('session.save_path', 'localhost:11211'); //こちらはtcp://がない

php8対応

ini_set('session.save_handler', 'memcached');
ini_set('session.save_path', "localhost:11211?persistent=1&weight=1&timeout=1&retry_interval=15");

memcache管理ツール

http://livebookmark.net/memcachephp/memcachephp.zip