Это не может работать должным образом.В Unicode хранится гораздо больше символов, чем в ANSI.Так что если вы «конвертируете» в ANSI, вы потеряете много персонажей.
http://php.net/manual/en/function.htmlentities.php
Можно использовать кодировку Unicode (UTF-8) с htmlentities:
string htmlentities ( string $string [, int $flags = ENT_COMPAT [, string $charset [, bool $double_encode = true ]]] )
htmlentities($myString, ENT_COMPAT, "UTF-8");
должно работать.