sql >> Database >  >> RDS >> Mysql

Ophalen van overeenkomende context van MySQL fulltext zoeken in PHP (en beveiliging)

Dit zou je op weg moeten helpen bij het "context"-gedeelte...

// 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...'

Deze functie houdt geen rekening met gevallen waarin de opvulgrenzen buiten de inhoudsreeks vallen, zoals wanneer het trefwoord wordt gevonden aan het begin of einde van de inhoud. Het houdt ook geen rekening met meerdere overeenkomsten, enz. Maar hopelijk zou het u in ieder geval in de goede richting moeten wijzen.



  1. lagere_case_table_names Instellingen in MySQL 8.0.12

  2. SQLite JSON_REMOVE()

  3. Vind datumhiaten met mysql

  4. MySQL:ik moet elke dag van 1 tot maximaal n berichten van elke gebruiker weergeven