在PHP中将UTF-8文本转换为ASCII

时间:2014-09-15 08:29:16

标签: php character-encoding

此代码输出UTF-8:

echo mb_detect_encoding("ø")

此代码输出ASCII:

echo mb_detect_encoding("ø");

那么,如何将UTF-8转换为ASCII?例如:将ø转换为&#248

2 个答案:

答案 0 :(得分:3)

ø HTML实体。它只使用ASCII字符,因此它被检测为ASCII,是的。您只需要对文本进行HTML编码:

echo htmlentities('ø', ENT_COMPAT, 'UTF-8');

这将输出ø,但它是一个等效的命名HTML实体。

我出去了,并建议你不要完全理解你想要的东西。也许你应该阅读What Every Programmer Absolutely, Positively Needs To Know About Encodings And Character Sets To Work With Text并从那里开始。

答案 1 :(得分:0)

使用htmlentities来实现您的目标

$myVar = 'ø';

$val = htmlentities($myVar);
echo $myVar;
// ø
echo mb_detect_encoding($myVar);
// UTF-8

echo $val;
// ø
echo mb_detect_encoding($val);
//ASCII