Parasol
Постоялец
- Регистрация
- 7 Июл 2007
- Сообщения
- 149
- Реакции
- 69
- Автор темы
- #1
Здравствуйте.
Подскажите как сделать аналог str_replace но чтобы заменялись не все найденные вхождения, а только первое?
Желательно без нахождения позиции вхождения ( strpos )
с strpos`ом есть, но чёто медленно работает ;(
Буду очень благодарен!
Подскажите как сделать аналог str_replace но чтобы заменялись не все найденные вхождения, а только первое?
Желательно без нахождения позиции вхождения ( strpos )
с strpos`ом есть, но чёто медленно работает ;(
Код:
function str_replace_once($search, $replace, $subject)
{
$firstChar = strpos($subject, $search);
if($firstChar !== false)
{
$beforeStr = substr($subject,0,$firstChar);
$afterStr = substr($subject, $firstChar + strlen($search));
return $beforeStr.$replace.$afterStr;
}
else
{
return $subject;
}
}
Буду очень благодарен!