현재 위치: > 최신 기사 목록> PHP는 Coreseek을 결합하여 효율적인 제품 검색 기능 세부 사항을 만듭니다.

PHP는 Coreseek을 결합하여 효율적인 제품 검색 기능 세부 사항을 만듭니다.

M66 2025-07-10

전자 상거래 플랫폼에서 제품 검색의 중요성

최신 전자 상거래 환경에서 제품 검색은 사용자가 대상 제품을 신속하게 찾는 핵심 기능입니다. 키워드 검색을 통해 사용자는 제품을 효율적으로 탐색하고 필터링하고 쇼핑 경험을 향상시킬 수 있습니다. 따라서 빠르고 정확한 검색 시스템을 만드는 것이 특히 중요합니다.

Coreseek 및 그 장점 소개

Coreseek은 스핑크스를 기반으로 개발되었으며 중국 환경에 최적화 된 전체 텍스트 검색 엔진입니다. 중국어 단어 세분화를 지원하며 빠른 응답 속도와 정확한 검색의 장점이 있습니다. Coreseek은 MySQL 데이터베이스에서 데이터를 가져와 인덱싱을 설정하고 간결한 쿼리 인터페이스를 제공하여 PHP와 같은 응용 프로그램의 통합을 용이하게합니다.

Coreseek을 설치하고 구성하십시오

먼저 Coreseek 패키지를 다운로드하여 지정된 디렉토리로 연결하십시오. 구성 파일이있는 디렉토리를 입력하고 Sphinx.conf.dist 이름을 Sphinx.conf로 바꿉니다. 파일을 열고 실제 요구에 따라 인덱스 경로 및 검색 필드 및 기타 구성 항목을 조정하십시오. 저장 후 터미널의 Coresek 설치 디렉토리로 전환하여 실행하십시오.

 ./bin/searchd

검색 서비스를 시작하고 서비스가 정상적으로 작동하는지 확인하십시오.

제품 데이터 및 색인 수입을 준비하십시오

MySQL이 설치되어 제품 데이터를 저장하기위한 데이터베이스 및 테이블을 만들어야합니다. 예를 들어:

 제품이 없으면 데이터베이스를 만듭니다.

테이블 제품 생성. 제품 (
  ID int 기본 키 auto_increment,
  이름 Varchar (100) NOL NULL,
  설명 텍스트,
  가격 소수점 (10, 2),
  카테고리 _id int
);

샘플 제품 데이터 삽입 :

 제품에 삽입. 제품 (이름, 설명, 가격, 카테고리 _id)
값
  ( '제품 1', '이것은 제품 1', 19.99, 1에 대한 설명입니다),
  ( '제품 2', '이것은 제품 2', 29.99, 2의 설명입니다),
  ( '제품 3', '이것은 제품 3', 39.99, 1),
  ( '제품 4', '이것은 제품 4', 49.99, 2의 설명입니다);

데이터 준비를 완료 한 후 인덱스 가져 오기 명령을 실행하십시오.

 ./bin/indexer-all-config/spath/to/sphinx.conf

데이터베이스에서 제품 데이터를 Coreseek 지수로 가져옵니다.

PHP를 사용하여 제품 검색 기능을 구현하십시오

Search.php 파일을 작성하여 검색 기능의 핵심 코드를 구현합니다.

<?php
require('path/to/sphinxapi.php');

// 검색 키워드를 얻으십시오
$keyword = $_GET['q'];

// 인스턴스화Sphinx고객
$sphinx = new SphinxClient();

// 설정Sphinx서버 연결
$sphinx-> SetServer ( &#39;localhost&#39;, 9312);

// search execute $ result = $ sphinx-> query ($ keyword, &#39;product_index&#39;);

// 검색 결과를 ($ result) {
    if ($ result [ &#39;total&#39;]> 0) {
        echo "{$ result [ &#39;total&#39;]} results에 검색했습니다.<br> ";
        foreach ($ result [ &#39;matches&#39;] as $ match) {
            $ product = getProductById ($ match [ &#39;id&#39;]); // id echo "제품 이름 : {$ product [ &#39;name&#39;]}에 따라 제품 정보 받기<br> ";
            echo "제품 설명 : {$ 곱 [ &#39;description&#39;]}<br> ";
            echo "제품 가격 : {$ product [ &#39;price&#39;]}<br><br> ";
        }
    } 또 다른 {
        에코 "결과가 발견 없음";
    }
} 또 다른 {
    echo $ sphinx-> getLasterror ();
}

// 제품 ID 기능을 기반으로 데이터베이스에서 제품 정보를 얻습니다. getProductById ($ id) {
    $ conn = new MySqli ( &#39;localhost&#39;, &#39;username&#39;, &#39;password&#39;, &#39;products&#39;);
    $ SQL = "id = $ id upther에서 선택 *;";
    $ result = $ conn-> query ($ sql);
    if ($ result-> num_rows> 0) {
        return $ result-> fetch_assoc ();
    } 또 다른 {
        널 리턴;
    }
}
?>

위의 코드는 데이터베이스 정보를 기반으로 Coreseek 및 출력 세부 제품 컨텐츠를 통해 제품 색인을 쿼리하는 방법을 보여줍니다. 실제 데이터베이스 구성에 따라 연결 매개 변수를 조정하십시오.

테스트 검색 기능

브라우저 방문 :
http://yourdomain.com/search.php?q=prace yourdomain.com을 서버 주소로, 키워드는 검색 할 내용입니다. 구성이 정확하고 인덱스가 업데이트 된 경우 해당 검색 결과가 표시됩니다.

요약

PHP와 Coreseek의 조합을 통해 반응적이고 정확한 제품 검색 시스템을 구축 할 수 있습니다. 합리적인 데이터베이스 설계 및 색인 관리를 통해 검색 효율성과 결과의 정확성을 보장하여 전자 상거래 플랫폼 사용자에게 더 나은 경험을 제공합니다. 이 안내서가 제품 검색 기능을 빠르고 효율적으로 도움이되기를 바랍니다.