html_entity_decode()返回HTML实体,而不是适用的字符。
<meta http-equiv="Content-Type" content="text/html charset=UTF-8">
<?php
$code='a'; // It's a code of 'a' UTF-8 character.
$char = html_entity_decode($code, ENT_COMPAT, $encoding = 'UTF-8');
/*
Now $char must contains 'a' value, but it contains 'a';
You can check this by following tests
*/
var_dump('a' === 'a'); // bool(false), of course.
var_dump('a' === $code); // bool(true)
var_dump('a' === $char); // bool(true) BUT MUST BE FALSE
var_dump($code === $char); // bool(true) BUT MUST BE FALSE
// Or this:
echo str_replace('&', '', $char); // it must print 'a', but it print '#97'
&#13;
看起来这个功能在我的情况下什么都不做。 怎么了?
答案 0 :(得分:0)
a
不是“UTF-8字符的代码”。
然而,a
是。使用它,您的代码将按预期工作。