Ошибка: Failed to parse the Currency Converter XML document.
$25 806.62
|
Ошибка: Failed to parse the Currency Converter XML document.
$25 147.02
|
Ошибка: Failed to parse the Currency Converter XML document.
$3 329.82
|
PHP кодировка писем
У меня часто спрашивают, как отсылать письма с помощью php в правильной кодировке: после отправки письма с русскими буквами, на почту людям приходит абракадабра.
А все дело в том, что для почты у нас принято использовать кодировку koi8-r, а для веба win 1251 (ansi) так, и выходит мы шлем с сайтов в win 1251, а почтовые программы открывают его как koi8-r...
Выходов из ситуации хватает. Начиная, можно на самой веб странице можно использовать кодировку koi8-r. Но я бы не советовал этого не делать у некоторых посетителей могут возникнуть с кодировкой на самой странице. Так что оставим этот метод для ламеров, а применим более изящный, на php.
Итак, что же можно сделать? Первое что приходит в голову а не проще ли перекодировать само сообщение? И в правду, нет нечего проще.
Тем более в php предусмотрена стандартная процедура convert_cyr_string(string str, string from, string to); как Вы уже, наверное, догадались, функция перекодирует текст, содержащийся в переменной $str из кодировки $from в кодировку $to. Указание кодировки происходит посредством символов латинского алфавита, вот доступные параметры и соответствующие им кодировки:
k koi8-r
w win 1251
i iso8859-5
a x-cp866
d x-cp866
m x-mac-cyrillic
Как видно из таблицы, в нашем случае, перед отправкой сообщения, содержащегося в переменной $msg, его нужно перекодировать из w в k (из win 1251 в koi8-r), это выглядит так: $msg = convert_cyr_string ($msg,w,k); вот и все, теперь можно спокойно отсылать наше письмо.