Я пытаюсь декодировать кодируемый, долго подчеркивают штриховой линией от числового объекта для строкового представления, но кажется, что я не могу найти функцию, которая может сделать это правильно.
Лучшим, который я нашел, является mb_decode_numericentity (), однако, по некоторым причинам ему не удается декодировать длинного тире и некоторые другие специальные символы.
$str = '–';
$str = mb_decode_numericentity($str, array(0xFF, 0x2FFFF, 0, 0xFFFF), 'ISO-8859-1');
Это возвратится"?".
Кто-либо знает, как решить эту проблему?
mb_decode_numericentity
не обрабатывает шестнадцатеричное, только десятичное. Вы получите ожидаемый результат с помощью:
$str = '–';
$str = mb_decode_numericentity ( $str , Array(255, 3145727, 0, 65535) , 'ISO-8859-1');
Вы можете использовать hexdec
для преобразования вашего шестнадцатеричного числа в десятичное.
Также из любопытства выполняет следующую работу:
$str = '–';
$str = html_entity_decode($str);