Автор оригинала: Eugeniy
Подскажите как выделить (подсветка) в тексте слова по которым производился поиск?
str_replace(array('word1', 'word2'), array('<b>word1</b>', '<b>word2</b>'), $found)
preg_replace('/(word1|word2)/i', '<b>\1</b>', $found);Автор оригинала: Eugeniy
А как эту замену сделать независимой от регистра?
$text = str_replace ($searchwords, "<b>$searchwords</b>", $text);
$text = str_replace ('/($searchwords)/i', "<font color=green><b>$searchwords</b></font>", $text);
Ну дык сделай сначалаАвтор оригинала: Eugeniy
У меня есть переменная $searchword в которой искомые слова через пробел.
preg_replace('/($searchword)/i', '<font color="green"><b>\1</b></font>', $found);Просто я пробовал так:
и по другому........ не получается....PHP:$text = str_replace ('/($searchwords)/i', "<font color=green><b>$searchwords</b></font>", $text);
Сделал так:Автор оригинала: Vladimirovich
Ну дык сделай сначала
$searchword = str_replace(' ', '|', $searchword);
preg_replace('/($searchword)/i', '<font color="green"><b>\1</b></font>', $found);
$searchword = "(". str_replace(" ", "|", $searchwords). ")";
$text = preg_replace('/($searchword)/i', '<font color="green"><b>/1</b></font>', $text);
возьми свой вариант и мой. сравни. повторить до полного самоудовлетворения 2 раза.Автор оригинала: Eugeniy
Ваобще ничего не заменяет, ни одно слово, ни несколько слов...
Автор оригинала: Vladimirovich
возьми свой вариант и мой. сравни. повторить до полного самоудовлетворения 2 раза.
копи-пасте знаешь что такое?
<?
$found = 'it is the dummy text';
$searchword = 'is text';
$searchword = str_replace(' ', '|', $searchword);
echo preg_replace("/($searchword)/i", '<font color="green"><b>\1</b></font>', $found);
?>
угу, потому и не поленился все проверить и запостил заведомо рабочий код...Автор оригинала: mvc_aaa
А косячек то у тебя был с кавычечками
Сделал так как написано, и заменил он мне все слова на еденицыАвтор оригинала: Vladimirovich
резултат:PHP:<? $found = 'it is the dummy text'; $searchword = 'is text'; $searchword = str_replace(' ', '|', $searchword); echo preg_replace("/($searchword)/i", '<font color="green"><b>1</b></font>', $found); ?>
it <font color="green"><b>is</b></font> the dummy <font color="green"><b>text</b></font>
а гадский форум все равно слешик убрал =(Автор оригинала: Vladimirovich
угу, потому и не поленился все проверить и запостил заведомо рабочий код...
бывает...
<?php
$mypage['text'] = "it is the dummy text";
if (isset($_GET['search']) AND $_GET['search'] != "") {
$searchword = str_replace(' ', '|', $_GET['search']);
$text = preg_replace("/($searchword)/i", '<font color="green"><b>\1</b></font>', $mypage['text']);
echo $text;
} else {
echo $mypage['text'];
}
?>
<?php
$mypage['text'] = "подсветить этот текст";
if (isset($_GET['search']) AND $_GET['search'] != "") {
$keywords = preg_quote($_GET['search'], "/");
$searchword = str_replace(' ', '|', $keywords);
$text = preg_replace("/($searchword)/i", '<font color="green"><b>\1</b></font>', $mypage['text']);
echo $text;
} else {
echo $mypage['text'];
}
?>