Skip to content
Advertisement

How to properly display Chinese characters in PHP?

I have these Chinese characters:

汉字/漢字''test

If I do

echo utf8_encode($chinesevar);

it displays

??/??''test

Or even if I just do a simple

echo $chinesevar

it still displays some weird characters…

So how am I going to display these Chinese characters without using the <meta> tag with the UTF-8 thingy .. or the ini_set UTF-8 thing or even the header() thing with UTF-8?

Advertisement

Answer

Simple:

  1. save your source code in UTF-8
  2. output an HTTP header to specify to your browser that it should interpret the page using UTF-8:

    header('Content-Type: text/html; charset=utf-8');
    

Done.

utf8_encode is for converting Latin-1 encoded strings to UTF-8. You don’t need it.

For more details, see Handling Unicode Front To Back In A Web App.

User contributions licensed under: CC BY-SA
5 People found this is helpful
Advertisement