[PHPwestoz] Stràngê chàràctëres §§§

Samuel Cochran sj26 at sj26.com
Thu Feb 17 13:03:02 UTC 2005


Adam Ashley wrote:

>Nicolas Connault wrote:
>  
>
>>I'm working on an I18n solution for my auction project, French-English. 
>>However, French is full of funny chàrâctërs which get into the database 
>>fine, but get output as basic characters when retrieved by PHP . . . 
>>(like ch?r?ct?rs).
>>
><snip>
>
>PHP itself is fully unicode compatible.
>
Actually, it's not. PHP is extremely ugly when it comes to unicode. This 
is stated in the manual when looking up Strings:

A *string* <http://au2.php.net/manual/en/language.types.string.php> is 
series of characters. In PHP, a character is the same as a byte, that 
is, there are exactly 256 different characters possible. This also 
implies that PHP has no native support of Unicode. See *utf8_encode()* 
<http://au2.php.net/manual/en/function.utf8-encode.php> and 
*utf8_decode()* <http://au2.php.net/manual/en/function.utf8-decode.php> 
for some Unicode support.

There are utf-8 and unicode help functions, though, as listed above. 
(http://php.net/utf8-encode; http://php.net/utf8-decode)

>To get the output to work you need to add the correct encoding metadata
>headers to your html output.
>  
>
This is important, whatever solution you use. Don't forget to add your 
content type and encoding manually:
|header("Content-Type: text/html; charset=utf-8");

Also have a look at this PHP Class which does intelligent utf8 encoding 
(apparently):
http://www.phpclasses.org/browse/package/71.html

Personally, I've never dealt much with Unicode, but perhaps you could 
try looking at i18n packages and see what they use? Perhaps look at 
existing products, CMSes etc, and see what encoding functions and 
methods they use?

Hope that helps,

-- Samuel Cochran
   sj26 at sj26.com
   +61 4 1544 1909

P.S. Even Thunderbird had trouble with your e-mail title!
|
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3154 bytes
Desc: S/MIME Cryptographic Signature
Url : http://lists.linux.org.au/pipermail/phpwestoz/attachments/20050217/ad11baca/attachment.bin 


More information about the PHPwestoz mailing list