in reply to Re^2: Wide characters in e-mail
in thread Wide characters in e-mail
You seem to think UNICODE and UTF-8 are the same thing. UTF-8 is a way of storing (encoding) the UNICODE characters.
To be honest, this works, but I am confused as to why.
decode_entities returns a string of UNICODE characters. Internally, it can be stored as either iso-latin-1 (decode_entities('é')) or UTF-8 (decode_entities('Ӓ')).
File handles (such as the socket over which the message will be sent) only understand bytes. Characters are turned into bytes by encoding them. That's why encode is needed.
The warning you were accessing Perl's internal format of the string (which happened to be UTF-8) and that it doesn't like you doing that. Explicitly convert the string of UNICODE characters to a string of UTF-8 bytes.
And when I print them as utf-8 to a file or web page they look fine, so maybe decode_entities is not doing something properly?
What does "print them as UTF-8" means?
|
|---|