如何將html實體轉(zhuǎn)換為十六進制?我用了這個代碼$username = preg_replace_callback('/[\x{80}-\x{10FFFF}]/u', function ($m) { $char = current($m); $utf = iconv('UTF-8', 'UCS-4', $char); return sprintf("&#x%s;", ltrim(strtoupper(bin2hex($utf)), "0")); }, $username);但它不會轉(zhuǎn)換字符等<。
1 回答

RISEBY
TA貢獻1856條經(jīng)驗 獲得超5個贊
如果你查看使用的正則表達式[\x{80}-\x{10FFFF}]
,你會發(fā)現(xiàn)它將匹配 ASCII 值(十六進制)位于 0x80 和 0x10FFFF 之間的所有字符
但如果你看一下 ASCII 圖表,你會發(fā)現(xiàn)
<
和的十六進制值>
低于0x80
。假設(shè)您已從 API 發(fā)布者那里獲得了正則表達式,他們可能希望您轉(zhuǎn)換擴展的 ASCII 字符,例如這些字符,這樣就不會造成任何問題。但是您可以編輯正則表達式并使其也適用于其他字符
- 1 回答
- 0 關(guān)注
- 226 瀏覽
添加回答
舉報
0/150
提交
取消