convert unicode to html entities hex

前端 未结 4 2102
日久生厌
日久生厌 2020-12-03 19:27

How to convert a Unicode string to HTML entities? (HEX not decimal)

For example, convert Français to Français.

4条回答
  •  臣服心动
    2020-12-03 19:49

    See How to get the character from unicode code point in PHP? for some code that allows you to do the following :

    Example use :

    echo "Get string from numeric DEC value\n";
    var_dump(mb_chr(50319, 'UCS-4BE'));
    var_dump(mb_chr(271));
    
    echo "\nGet string from numeric HEX value\n";
    var_dump(mb_chr(0xC48F, 'UCS-4BE'));
    var_dump(mb_chr(0x010F));
    
    echo "\nGet numeric value of character as DEC string\n";
    var_dump(mb_ord('ď', 'UCS-4BE'));
    var_dump(mb_ord('ď'));
    
    echo "\nGet numeric value of character as HEX string\n";
    var_dump(dechex(mb_ord('ď', 'UCS-4BE')));
    var_dump(dechex(mb_ord('ď')));
    
    echo "\nEncode / decode to DEC based HTML entities\n";
    var_dump(mb_htmlentities('tchüß', false));
    var_dump(mb_html_entity_decode('tchüß'));
    
    echo "\nEncode / decode to HEX based HTML entities\n";
    var_dump(mb_htmlentities('tchüß'));
    var_dump(mb_html_entity_decode('tchüß'));
    
    echo "\nUse JSON encoding / decoding\n";
    var_dump(codepoint_encode("tchüß"));
    var_dump(codepoint_decode('tch\u00fc\u00df'));
    

    Output :

    Get string from numeric DEC value
    string(4) "ď"
    string(2) "ď"
    
    Get string from numeric HEX value
    string(4) "ď"
    string(2) "ď"
    
    Get numeric value of character as DEC int
    int(50319)
    int(271)
    
    Get numeric value of character as HEX string
    string(4) "c48f"
    string(3) "10f"
    
    Encode / decode to DEC based HTML entities
    string(15) "tchüß"
    string(7) "tchüß"
    
    Encode / decode to HEX based HTML entities
    string(15) "tchüß"
    string(7) "tchüß"
    
    Use JSON encoding / decoding
    string(15) "tch\u00fc\u00df"
    string(7) "tchüß"
    

提交回复
热议问题