sql >> Databáze >  >> RDS >> Mysql

Načtení odpovídajícího kontextu fulltextového vyhledávání MySQL v PHP (a zabezpečení)

Tím byste měli začít s "kontextovou" částí...

// return the part of the content where the keyword was matched
function get_surrounding_text($keyword, $content, $padding)
{
    $position = strpos($content, $keyword);
    // starting at (where keyword was found - padding), retrieve
    // (padding + keyword length + padding) characters from the content
    $snippet = substr($content, $position - $padding, (strlen($keyword) + $padding * 2));
    return '...' . $snippet . '...';
}

$content = 'this is a really long string of characters with a magic word buried somewhere in it';
$keyword = 'magic';
echo get_surrounding_text($keyword, $content, 15); // echoes '... string with a magic word in it...'

Tato funkce nebere v úvahu případy, kdy by hranice výplně šly mimo řetězec obsahu, jako když je klíčové slovo nalezeno blízko začátku nebo konce obsahu. Také to nezohledňuje více shod atd. Ale doufejme, že by vás to mělo alespoň nasměrovat správným směrem.



  1. MySQL group_concat s výběrem uvnitř select

  2. Import CSV aktualizuje pouze jeden sloupec v tabulce

  3. Kombinace výsledků dvou samostatných dotazů MySQL

  4. MySQL se Sequelize:ER_BAD_DB_ERROR:Neznámá databáze