$start = $key[$i][$j]." ";
$zamena_start = "<a href=\"../cfg/article/".$z."\">" .$key[$i][$j] . "</a>";
$content = str_ireplace($start, $zamena_start, $content);
Пример.
Строка: единственным минусом минус
Необходимо в тексте заменить слово минус на слово плюс. Чтобы в этом примере слово минусом осталось неизменяемым, для этого и стоит в условии поиска пробел в переменной старт. Вручную если задать, то работает нормально.
$start ="минус ";
$zamena_start = "<a href=\"../cfg/article/".$z."\">" .$key[$i][$j] . "</a>";
$content = str_ireplace($start, $zamena_start, $content);
а если так:
$start = $key[$i][$j]." ";
то заменяет все пробелы.
Спустя 1 час, 21 минута, 40 секунд (4.10.2011 - 14:27) Aleks-prog написал(а):
в цикле проходись по все строке
ищи вхождения заданной строки в данную строку с помощью функции помоему strstr называется(поищи в строковых функциях)
когда дойдешь до вхождения поставь условие if если заданная строка равна подстроке, то применяй replace замену
ищи вхождения заданной строки в данную строку с помощью функции помоему strstr называется(поищи в строковых функциях)
когда дойдешь до вхождения поставь условие if если заданная строка равна подстроке, то применяй replace замену
Спустя 9 минут, 20 секунд (4.10.2011 - 14:37) Winston написал(а):
Попробуй так
$str = 'единственным минусом минус два минус';
echo preg_replace('#\sминус(\s|$)#iu', ' плюс ', $str);
Спустя 5 часов, 47 минут, 6 секунд (4.10.2011 - 20:24) 287_08 написал(а):
В общем проблема решена. При детальном осмотре входящих данных выяснилось что водном месте стоит пробел, он то и рубит весь код. А я то еще думал, что это неведомая фигня подкралась незаметно)