str_replace в JS и PHP неправильно работает?
Запуская str_replace() получаю неожиданный результат. Или думаю не логично?
Вроде бы простая задача: в текстах из разных источников заменить перевод строки/возврат каретки на "каноническое" написание "\r\n". Сначала JS. На http://javascript.ru/php/str_replace уважаемым Kevin van Zonneveld предложен аналог PHP-функции str_replace(). Правомерна ли запись: var s = str_replace("A", "A", "A"); Я ожидал на выходе получить "A". Но имею зависание. Теперь PHP. На http://php.ru/manual/function.str-replace.html дан пример и сказано: Обрабатывает сначала \r\n для избежания их повторной замены. В моем тестовом примере для наглядности вместо "\r\n" использую "AB".
$s = "A123A456A789";
// при замене на A получаем результат: A123A456A789 ok!
// при замене на AB получаем результат: AAB123AAB456AAB789 !??
$order = array("AB", "A", "B");
$replace = "AB";
echo "исходная: $s<br>";
$s = str_replace($order, $replace, $s);
echo "результат: $s<br>";
Допустимо ли в $replace указывать такие же символы, что и в $order? |
Маэстро, причем тут "Общие вопросы Javascript"?
|
Цитата:
javascript.ru - мой любимый форум. И люди неплохие. И половина работает с PHP. Поэтому написал сюда. |
Цитата:
http://javascript.ru/forum/server/ |
| Часовой пояс GMT +3, время: 22:52. |