2017-04-05 1 views
-1

Je souhaite mettre en surbrillance plusieurs motsphp Mettre en surbrillance plusieurs mots

Je souhaite rechercher tous les termes de recherche, même s'ils se chevauchent.

Si je recherche ab et abc bc vais souligner

+1

Désolé, mais on ne sait pas ce que vous demandez en fait. Est-ce que cette question concerne la recherche ou la mise en évidence? S'il vous plaît, prenez le temps de réviser votre question et d'expliquer plus en détails ce que vous voulez réellement faire. – arkascha

+0

Si vous voulez mettre en surbrillance ab mot, Puis appliquer css pour span –

+0

Je change de question @arkascha –

Répondre

1
Use this line of code which helps to highlights the search string: 
<?php 
function highlightsWords($text, $words) { 
    preg_match_all('~\w+~', $words, $m); 
    if(!$m) return $text; 
    $re = '~\\b(' . implode('|', $m[0]) . ')\\b~i'; 
    return preg_replace($re, '<b>$0</b>', $text); 
} 

$text = 'Hang Seng Index advanced 0.6% to 24,400.80, after falling as much as 0.4% earlier'; 
$words = 'hang earlier'; 
echo highlightsWords($text, $words); 
?> 
+0

Bonne approche, il va échouer pour une partie des mots, cependant, comme demandé. – arkascha

+0

De même, vous devez citer les mots recherchés pour éviter que l'expression régulière ne se brise. – arkascha