PHP str_replace()
предназначался только для строк ANSI и, как таковой, мог искажать строки UTF-8. Однако, учитывая, что он двоично-безопасный, будет ли он работать правильно, если в качестве аргументов были заданы только строки UTF-8?
Изменить: я не ищу функцию замены, я просто хотел бы знать, правильна ли эта гипотеза.