leader sur de ma dernière question:Google comme résultats de recherche
Tidying search results from database php
Ma recherche m'a conduit au code suivant pour tronquer les résultats de recherche, mettre en évidence le mot-clé et afficher un certain nombre de caractères à gauche et droite du mot-clé. Vous cherchez mieux.
Ma question est maintenant, avec le code ci-dessous, en ajoutant des caractères à gauche ou à droite du mot-clé, il coupe les mots de moitié.
exemple:
Savings plans
..le="background: #E13300;">investing in international accounts is no longer the premise of the rich and famous, all expatriates living abroad can now enjoy flex...
Comment puis-je faire la fonction de troncature arrêter de couper mes mots et les étiquettes dans la moitié ????
code:
$word = 'invest';
$characters_before="80";
$characters_after="80";
function supertruncate($text, $word, $characters_before, $characters_after){
$pos = strpos($text, $word);
$start = $characters_before < $pos ? $pos - $characters_before : 0;
$len = $pos + strlen($word) + $characters_after - $start;
$text = str_ireplace($word, '<span class="highlight" style="background: #E13300;">' . $word . '</span>', $text);
return substr($text, $start, $len);
}
Merci Peter, ça marche. Des conseils sur la façon dont je peux obtenir la fin de tronquer sur les mots complets ?? – hairynuggets
trouvez le dernier espace en utilisant 'strrpos()' et utilisez de nouveau 'substr()'. N'oubliez pas de mettre en surbrillance comme dernière opération. – Peter