header("Content-type:text/html;charset=utf-8");
/**
* すべての結果セットの SQL ステートメントを実行し、結果セットを memcached サーバーにキャッシュするために使用されます
*@param
文字列$sql
結果セットを含むクエリステートメント SQL
* @param object
$memcache クラス Memcache のオブジェクト
*@return $date
結果セットのデータを返す
*/
function select($sql,Memcache $memcache) {
/* memcache の一意の識別子としての md5 sql コマンド*/
$key=md5($sql);
/* まず memcached サーバーからデータを取得します*/
$data= $ memcache->get($key);
/* データがない場合はデータベースから取得*/
if(!$data){
try{
$pdo= new PDO( "mysql:host=localhost;dbname=test","root","root");
}catch(PDOException $e){
die("接続に失敗しました:".$ e-> ;getMessage());
}
$pdo->query("set names utf8");//文字化けを防ぐ
$stmt=$pdo->prepare( $sql);
$stmt->execute();
$data=$stmt->fetchAll(PDO::FETCH_ASSOC);
var_dump($data);//テスト
$memcache ->add($key,$data,MEMCACHE_COMPRESSED,0);
}
return $data;
}
$mem=新しいMemcache;
$mem- >connect( "localhost","11211");
$data=select("select * from book",$mem);
//echo "
";<br><span></span>print_r( $data); <br><span></span>//エコー "";
上記では、PHP が MemCache を使用してデータベースにクエリを実行する方法を、関連する側面も含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。