sql >> Base de Datos >  >> RDS >> Mysql

Recuperación del contexto coincidente de la búsqueda de texto completo de MySQL en PHP (y seguridad)

Esto debería ayudarlo a comenzar con la parte del "contexto"...

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

Esta función no tiene en cuenta los casos en los que los límites de relleno quedarían fuera de la cadena de contenido, como cuando la palabra clave se encuentra cerca del principio o el final del contenido. Tampoco tiene en cuenta múltiples coincidencias, etc. Pero, con suerte, al menos debería orientarte en la dirección correcta.