Utilisez PHP et Xunsearch pour implémenter la fonction de recherche sur l'ensemble du site et améliorer l'expérience utilisateur

WBOY
Libérer: 2023-07-29 21:40:01
original
1901 Les gens l'ont consulté

Utilisez PHP et Xunsearch pour implémenter la fonction de recherche sur l'ensemble du site afin d'améliorer l'expérience utilisateur

Avec le développement rapide d'Internet, le contenu du site Web devient de plus en plus abondant et les utilisateurs doivent trouver les informations requises plus rapidement et avec précision, ce qui permet d'obtenir un site complet efficace. La fonction de recherche devient particulièrement importante. En tant que langage de programmation côté serveur couramment utilisé, PHP, associé à Xunsearch, un moteur de recherche de texte intégral chinois open source, peut facilement mettre en œuvre des fonctions de recherche sur l'ensemble du site et améliorer l'expérience utilisateur.

1. Introduction à Xunsearch

Xunsearch est un moteur de recherche en texte intégral hautes performances, puissant, open source et gratuit. Il prend en charge la segmentation des mots chinois, la recherche de synonymes, la correspondance de mots clés multi-champs et d'autres fonctionnalités. toutes sortes de sites Web et d'applications.

2. Installation et configuration de Xunsearch

Tout d'abord, nous devons télécharger et installer Xunsearch à partir du site officiel de Xunsearch (https://www.xunsearch.com/). Le processus d'installation est relativement simple et ne sera pas décrit en détail ici.

Une fois l'installation terminée, nous devons effectuer les configurations pertinentes. Entrez le dossier sdk/php/app dans le répertoire d'installation, recherchez le fichier Main.php et modifiez les paramètres suivants : sdk/php/app文件夹,找到Main.php文件,修改以下参数:

$server = 'localhost'; // Xunsearch安装的服务器地址
$port = 8383; // Xunsearch服务端口,默认为8383
$index_name = 'your_index_name'; // 索引名,自定义
Copier après la connexion

至此,Xunsearch的安装与配置工作就完成了。

三、创建全文索引

在我们开始实现全站搜索功能之前,我们需要先创建全文索引。在Xunsearch的安装目录中,有一个indexer.php文件,我们可以使用该文件来创建索引。

首先,使用以下命令生成indexer.php所需的配置文件:

php api/cli/phpcmd.php indexer --config-charset=utf8 --ini > api/cli/phpcmd.ini
Copier après la connexion

然后,打开phpcmd.ini文件,修改以下参数:

[xs1]
project.name = your_project_name # 搜索项目名,自定义
#index = filenames # 需要被搜索的MySQL数据库表名,格式为:"数据库名.表名"的形式,多个表用逗号分隔
#index = table1,table2
charset = utf8 # 数据库连接使用的字符编码
Copier après la connexion

配置完成后,我们可以使用以下命令来建立全文索引:

php api/cli/phpcmd.php indexer --all
Copier après la connexion

这个命令会将所有内容添加到索引中,如有新内容添加进数据库,还需定期运行该命令以更新索引。

四、实现全站搜索功能

我们已经安装、配置并创建了全文索引,接下来我们开始编写PHP代码,实现全站搜索功能。

首先,我们需要一个搜索页,用户在该页面输入关键词进行搜索。以下是一个简单的搜索页面示例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>全站搜索</title>
    <style>
        form {
            text-align: center;
            margin-top: 50px;
        }
        input[type=text] {
            padding: 6px;
            font-size: 16px;
        }
        input[type=submit] {
            padding: 6px 20px;
            font-size: 16px;
            background-color: #2980b9;
            color: #fff;
            border: none;
            cursor: pointer;
        }
    </style>
</head>
<body>
    <form action="search.php" method="GET">
        <input type="text" name="keyword" placeholder="请输入关键词">
        <input type="submit" value="搜索">
    </form>
</body>
</html>
Copier après la connexion

搜索页面代码很简单,主要是一个表单,用户输入关键词后点击"搜索"按钮进行搜索操作。

接下来,我们需要创建search.php文件,用于处理搜索请求并返回搜索结果。以下是search.php文件的代码示例:

<?php
require_once 'sdk/php/app/Main.php';

$xs = new XS($index_name); // 创建Xunsearch对象

$keyword = $_GET['keyword']; // 获取关键词

$search = $xs->search; // 获取Xunsearch搜索对象
$search->setQuery($keyword); // 设置搜索关键词
$search->setCharset('UTF-8'); // 设置字符编码

$result = $search->search(); // 执行搜索

foreach ($result as $doc) { // 遍历搜索结果
    echo '<h3>' . $doc->title . '</h3>';
    echo '<p>' . $doc->content . '</p>';
    echo '<hr>';
}
Copier après la connexion

以上代码首先引入了Main.phprrreee

À ce stade, l'installation et la configuration de Xunsearch est terminée.

3. Créer un index de texte intégral

Avant de commencer à implémenter la fonction de recherche sur le site complet, nous devons d'abord créer un index de texte intégral. Dans le répertoire d'installation de Xunsearch, il y a un fichier indexer.php, que nous pouvons utiliser pour créer un index.

Tout d'abord, utilisez la commande suivante pour générer le fichier de configuration requis par indexer.php :

rrreee

Ensuite, ouvrez le fichier phpcmd.ini et modifiez les paramètres suivants : 🎜rrreee🎜Configuration Une fois terminé, nous pouvons utiliser la commande suivante pour créer un index de texte intégral : 🎜rrreee🎜Cette commande ajoutera tout le contenu à l'index Si du nouveau contenu est ajouté à la base de données, vous devez exécuter cette commande régulièrement. pour mettre à jour l'index. 🎜🎜4. Implémenter la fonction de recherche à l'échelle du site 🎜🎜Nous avons installé, configuré et créé l'index de texte intégral. Ensuite, nous commençons à écrire du code PHP pour implémenter la fonction de recherche à l'échelle du site. 🎜🎜Tout d'abord, nous avons besoin d'une page de recherche sur laquelle les utilisateurs peuvent saisir des mots-clés à rechercher. Voici un exemple simple de page de recherche : 🎜rrreee🎜Le code de la page de recherche est très simple, principalement un formulaire Une fois que l'utilisateur a saisi le mot-clé, cliquez sur le bouton « Rechercher » pour effectuer l'opération de recherche. 🎜🎜Ensuite, nous devons créer le fichier search.php pour traiter les demandes de recherche et renvoyer les résultats de recherche. Ce qui suit est un exemple de code du fichier search.php : 🎜rrreee🎜Le code ci-dessus introduit d'abord le fichier Main.php et crée un objet Xunsearch. Ensuite, obtenez les mots-clés saisis par l'utilisateur et effectuez une recherche à l'aide de l'objet de recherche Xunsearch. Enfin, les résultats de la recherche sont itérés et affichés sur la page. 🎜🎜5. Résumé🎜🎜En utilisant PHP et Xunsearch, nous avons implémenté une fonction de recherche simple à l'échelle du site. Les utilisateurs peuvent trouver les informations dont ils ont besoin rapidement et avec précision, ce qui offre une grande commodité pour l'expérience utilisateur du site Web. 🎜🎜Bien sûr, Xunsearch possède de nombreuses autres fonctionnalités, telles que la prise en charge de la recherche booléenne, de la recherche Pinyin, etc. Si vous avez des besoins de recherche plus avancés, vous pouvez explorer davantage l'utilisation de Xunsearch. 🎜🎜La mise en œuvre de la fonction de recherche sur l'ensemble du site peut non seulement améliorer l'expérience utilisateur, mais également améliorer l'effet SEO du site Web et injecter une nouvelle vitalité dans le développement du site Web. J'espère que cet article pourra être utile à tout le monde, merci d'avoir lu ! 🎜

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!