Maison >développement back-end >tutoriel php >Connexions PHP aux bases de données NoSQL : MongoDB, Redis et plus

Connexions PHP aux bases de données NoSQL : MongoDB, Redis et plus

WBOY
WBOYoriginal
2024-06-05 19:15:00741parcourir

Connectez-vous à la base de données NoSQL en PHP : MongoDB : utilisez la classe MongoDBClient ; Redis : utilisez la classe Redis ; Elasticsearch : utilisez la classe ElasticsearchClientBuilder. Utilisez Redis pour mettre en cache les pages WordPress : créez un client Redis ; définissez une fonction de filtre pour vérifier si la page existe dans le cache ; si elle existe, affichez la page mise en cache ; sinon, affichez la page d'origine et activez-la en cache ;

Connexions PHP aux bases de données NoSQL : MongoDB, Redis et plus

Connexion de PHP aux bases de données NoSQL

Les bases de données NoSQL (telles que MongoDB, Elasticsearch, Redis) sont largement favorisées dans le développement d'applications modernes en raison de leurs caractéristiques flexibles, évolutives et hautes performances. Voici comment se connecter à diverses bases de données NoSQL en PHP :

MongoDB

$client = new MongoDB\Client("mongodb://localhost:27017");
$db = $client->myDatabase; //选择数据库
$collection = $db->myCollection; //选择集合

Redis

$redis = new Redis();
$redis->connect('127.0.0.1', 6379); //连接Redis服务器

Elasticsearch

$client = Elasticsearch\ClientBuilder::create()->setHosts(['127.0.0.1:9200'])->build();

Exemple pratique : mettre en cache des pages WordPress avec Redis

Ici voici comment mettre en cache à l'aide de Redis Comment pour utiliser les pages WordPress :

//获取Redis客户端
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);

//创建过滤缓存的函数
function cache_filter_func($buffer) {
  global $redis;

  $url = $_SERVER['REQUEST_URI']; //获取当前URL

  //检查Redis缓存中是否存在页面
  $cached_page = $redis->get($url);

  //如果存在,则直接输出缓存页面
  if ($cached_page) {
    echo $cached_page;
  }

  //否则,输出原始页面并缓存起来
  else {
    $output = ob_get_contents(); //获取输出缓冲区内容
    ob_end_clean();

    //将页面写入Redis缓存
    $redis->set($url, $output);

    //输出原始页面
    echo $output;
  }
}

//启用缓存过滤
add_filter('wp_title_pri', 'my_cache_filter_func', 1);

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn