Eine kleine Demo dieser Suchmaschine finden Sie hier. Diese Demo basiert auf einem Datensatz von 1000 Filmen aus den Jahren 2006 und 2016. Die Ergebnisse werden während der Eingabe angezeigt.
Installieren Sie diese Bibliothek über Composer:
composer require vfou/php-search 1.1
Zusamenfassend :
Eine vollständigere Auflistung finden Sie auf der Feature-Seite
Die Suchmaschine ist mit einem Beispielschema ausgestattet, das Ihnen einen schnellen Zugriff auf die Bibliothek ermöglicht.
Zuerst müssen Sie die Suchmaschine laden.
use VFou Search Engine ;
$ engine = new Engine ();
Sie können ein Array als Parameter des Klassenkonstruktors angeben. Weitere Informationen finden Sie auf der Konfigurationsseite des Wikis.
Durch die Erstellung der Engine wird neben Ihrer Indexdatei ein Verzeichnis angezeigt:
(Alle diese Verzeichnisse können mit dem Konfigurationsarray geändert werden)
Zuerst müssen Sie der Suchmaschine etwas geben, nach dem sie suchen soll. Wir erstellen einige Dokumente und bitten die Engine, sie zu indizieren.
$ doc = [
" id " => 1 ,
" type " => " example-post " ,
" title " => " this is my first blog post ! " ,
" content " => " I am very happy to post this first post in my blog ! " ,
" categories " => [
" party " ,
" misc. "
],
" date " => " 2018/01/01 " ,
" comments " => [
[
" author " => " vincent " ,
" date " => " 2018/01/01 " ,
" message " => " Hello world! "
],
[
" author " => " someone " ,
" date " => " 2018/01/02 " ,
" message " => " Welcome ! "
]
]
];
$ engine -> update ( $ doc );
$ doc = [
" id " => 2 ,
" type " => " example-post " ,
" title " => " This is the second blog post " ,
" content " => " a second one for fun " ,
" date " => " 2018/01/05 " ,
" categories " => [
" misc. "
],
" comments " => [
[
" author " => " someone " ,
" date " => " 2018/01/05 " ,
" message " => " Another one ?! "
]
]
];
$ engine -> update ( $ doc );
Hinweis: Sie können diese beiden Dokumente auch in einem Array zusammenfassen und die Funktion updateMultiple() verwenden, um mehrere Dokumente gleichzeitig zu indizieren.
Nachdem Ihre Dokumente nun indiziert sind, können Sie die Suchfunktion verwenden und Ergebnisse abrufen:
$ response = $ engine -> search ( ' second post ' );
var_dump ( $ response );
$ response = $ engine -> search ( ' post ' );
var_dump ( $ response );
Weitere Informationen zu dieser Bibliothek, beispielsweise zur Verwendung erweiterter Funktionen, finden Sie auf der Wiki-Seite dieses Repositorys
Das Admin-Panel ist eine Klasse, die instanziiert und dann ausgeführt werden muss. Da es sich nicht um eine aufrufbare Datei handelt, müssen Sie sie über eine normale PHP-Datei aufrufen:
<?php
use VFou Search AdminPanel ;
// include the composer autoload file, modify the path if needed
require " vendor/autoload.php " ;
// securize your file access or directly here
// if($_SERVER['REMOTE_ADDR'] != "127.0.0.1") exit('unauthorized');
// instantiate the panel and then run it
$ admin = new AdminPanel ();
echo $ admin -> run ();
Der Konstruktor des AdminPanels akzeptiert als ersten Parameter dasselbe Konfigurationsarray, das Sie möglicherweise zum Instanziieren der Engine verwenden, und Sie sollten es übergeben, wenn Sie benutzerdefinierte Schemata haben. (sonst funktioniert das Panel nicht richtig)
Weitere Informationen finden Sie im Admin-Panel-Handbuch
Diese Bibliothek steht unter der MIT-Lizenz. Sehen Sie sich die vollständige Lizenz an