Maison > Article > développement back-end > Développement de recherche PHP et Manticore : créer un moteur de recherche privé
Développement de recherche PHP et Manticore : créer un moteur de recherche privé
Introduction :
À l'ère d'Internet d'aujourd'hui, les moteurs de recherche sont l'un des principaux moyens permettant aux utilisateurs d'obtenir des informations. Les moteurs de recherche des géants de l'Internet comme Google et Baidu sont devenus des outils indispensables dans la vie quotidienne des gens. Toutefois, pour certains scénarios d’application spécifiques, l’utilisation de moteurs de recherche publics n’est pas un choix idéal. Cet article présente les méthodes et pratiques de création d'un moteur de recherche privé à l'aide de PHP et Manticore Search.
1. Comprendre Manticore Search
Manticore Search est un moteur de recherche en texte intégral open source qui adopte l'architecture du moteur de recherche Sphinx pour fournir des fonctions de recherche en texte intégral efficaces et évolutives. Manticore Search prend en charge la réplication maître-esclave, l'indexation distribuée, l'indexation en temps réel, les requêtes multi-index, la récupération de texte intégral et d'autres fonctionnalités, et convient au traitement de données massives et aux scénarios de recherche à haute concurrence.
2. Installez Manticore Search
Tout d'abord, nous devons installer Manticore Search. Vous pouvez l'installer dans un environnement Linux en suivant les étapes suivantes :
3. Utilisez les extensions PHP pour faire fonctionner Manticore Search
Manticore Search fournit des extensions PHP pour faciliter notre utilisation de PHP pour interagir avec les moteurs de recherche. Nous pouvons créer des index, insérer des données et exécuter des requêtes via des extensions PHP. Voici un exemple de code simple :
<?php // 连接到Manticore Search服务 $dsn = 'mysql:host=127.0.0.1;port=9306'; $db = new PDO($dsn); // 创建索引 $sql = 'CREATE TABLE products (id INTEGER PRIMARY KEY, name TEXT, price FLOAT)'; $db->exec($sql); // 插入数据 $sql = 'INSERT INTO products (id, name, price) VALUES (1, "Apple", 5.99)'; $db->exec($sql); $sql = 'INSERT INTO products (id, name, price) VALUES (2, "Banana", 3.99)'; $db->exec($sql); $sql = 'INSERT INTO products (id, name, price) VALUES (3, "Orange", 4.99)'; $db->exec($sql); // 执行查询 $sql = 'SELECT * FROM products WHERE MATCH("Apple")'; $result = $db->query($sql); while ($row = $result->fetch()) { echo $row['id'] . ' ' . $row['name'] . ' ' . $row['price'] . PHP_EOL; } // 关闭连接 $db = null; ?>
Dans le code ci-dessus, nous nous connectons d'abord au service Manticore Search et créons une table d'index nommée "products". Nous avons ensuite inséré trois éléments de données produit et effectué une simple requête pour les produits dont le nom contient « Apple ». Enfin, nous générons les résultats de la requête via une boucle.
4. Créer un moteur de recherche privé
En utilisant Manticore Search et PHP, nous pouvons créer un moteur de recherche privé en texte intégral pour répondre aux besoins spécifiques des applications. Ce qui suit est un exemple simple qui utilise PHP comme script de traitement en arrière-plan pour recevoir les mots-clés saisis par l'utilisateur via un formulaire et effectuer des opérations de recherche :
<?php // 连接到Manticore Search服务 $dsn = 'mysql:host=127.0.0.1;port=9306'; $db = new PDO($dsn); // 处理用户提交的搜索词 if (isset($_POST['keyword'])) { $keyword = $_POST['keyword']; $keyword = trim($keyword); // 执行查询 $sql = "SELECT * FROM products WHERE MATCH(:keyword)"; $stmt = $db->prepare($sql); $stmt->execute(['keyword' => $keyword]); $result = $stmt->fetchAll(); // 输出查询结果 foreach ($result as $row) { echo $row['id'] . ' ' . $row['name'] . ' ' . $row['price'] . PHP_EOL; } } ?> <form action="" method="post"> <input type="text" name="keyword" placeholder="请输入关键词"> <input type="submit" value="搜索"> </form>
Dans le code ci-dessus, nous recevons les mots-clés saisis par l'utilisateur via un formulaire et exécutons le actions correspondantes dans l'opération de recherche en arrière-plan. Les résultats de la recherche seront affichés sur la page.
5. Résumé
Cet article présente les méthodes et pratiques de création d'un moteur de recherche privé à l'aide de PHP et Manticore Search. Grâce à l'extension PHP fournie par Manticore Search, nous pouvons facilement créer des index, insérer des données et exécuter des requêtes. En même temps, combiné à la fonction de traitement de formulaire de PHP, nous pouvons créer une page de recherche simple et implémenter une fonction de recherche privée en texte intégral. J'espère que cet article pourra vous aider à créer un moteur de recherche privé.
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!