Tom*_*Tom 21 php html-entities
以下代码输出一个空字符串.原因是$ text中的"ó",但为什么呢?那么utf-8编码的字符是什么?
使用iso-8859-1时问题解决了,但我需要使用utf-8,所以我做错了什么?
<!doctype html>
<head>
<meta charset="utf-8">
</head>
<body>
<?
$text = 'Hola ó Hola';
$text = htmlentities($text,ENT_QUOTES,'utf-8');
echo $text;
?>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
jgr*_*eep 34
我有一个类似的问题,并使用标志ENT_SUBSTITUTE来防止空字符串.它仍然没有编码,我不能依赖文件是UTF-8,所以我只在字符串上转换编码:
$text = htmlentities(mb_convert_encoding($text, 'UTF-8', 'ASCII'), ENT_SUBSTITUTE, "UTF-8");
Run Code Online (Sandbox Code Playgroud)