sql >> Databasteknik >  >> RDS >> Mysql

Bästa metoder för att visa sökresultat med tillhörande textutdrag från det faktiska resultatet

Det går bra att söka i den faktiska databasen tills du vill lägga till snygga funktioner som den ovan. Enligt min erfarenhet är det bäst att skapa en dedikerad söktabell med nyckelord och sid-ID:n/URL:er/etc. Fyll sedan i tabellen varje n timmar med innehåll. Under denna population kan du lägga till utdrag för varje dokument för varje sökord.

Alternativt kan ett snabbt hack vara:

<?php
$text = 'This is an example text page with content. It could be red, green or blue.';
$keyword = 'red';
$size = 5; // size of snippet either side of keyword

$snippet = '...'.substr($text, strpos($text, $keyword) - $size, strpos($text, $keyword) + sizeof($keyword) + $size).'...';
$snippet = str_replace($keyword, '<strong>'.$keyword.'</strong>', $snippet);
echo $snippet;
?>


  1. CURRENT_TIMESTAMP Exempel – MySQL

  2. Stöder PostgreSQL transparent komprimering av tabeller (fragment)?

  3. sqlalchemy.exc.NoSuchModuleError:Kan inte ladda plugin:sqlalchemy.dialects:postgres

  4. Byter namn på pluggbar databas