Développement de recherche PHP et Manticore : créer un moteur de recherche privé

王林
Libérer: 2023-08-06 09:10:01
original
1364 Les gens l'ont consulté

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 :

  1. Téléchargez le package d'installation de Manticore Search
  2. Décompressez le package d'installation et entrez dans le répertoire décompressé
  3. Exécutez le script d'installation pour installer
  4. Configurez les paramètres pertinents de Manticore Recherche, comme la surveillance des ports, des répertoires d'index, etc.
  5. Démarrez Manticore Search

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;
?>
Copier après la connexion

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>
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!