在 MySQL 中解碼 HTML 實體
HTML 實體是特殊字符,用於表示 HTML 中的各種符號和字符。例如,字元“”代表引號,且
如果您有包含 HTML 實體的文字數據,您可能需要對其進行解碼,以便正確顯示文字。 MySQL 沒有內建函數來解碼 HTML 實體,但您可以建立使用者定義函數 (UDF) 來執行此操作。
以下是可用於解碼 HTML 的 UDF 範例實體:
CREATE FUNCTION HTML_UnEncode(X VARCHAR(255)) RETURNS VARCHAR(255) CHARSET latin1 DETERMINISTIC BEGIN DECLARE TextString VARCHAR(255) ; SET TextString = X ; #quotation mark IF INSTR( X , '&quot;' ) THEN SET TextString = REPLACE(TextString, '&quot;','"') ; END IF ; #apostrophe IF INSTR( X , '&apos;' ) THEN SET TextString = REPLACE(TextString, '&apos;','"') ; END IF ; #ampersand IF INSTR( X , '&amp;' ) THEN SET TextString = REPLACE(TextString, '&amp;','&') ; END IF ; #less-than IF INSTR( X , '&lt;' ) THEN SET TextString = REPLACE(TextString, '&lt;','<') ; END IF ; #greater-than IF INSTR( X , '&gt;' ) THEN SET TextString = REPLACE(TextString, '&gt;','>') ; END IF ; #non-breaking space IF INSTR( X , '&nbsp;' ) THEN SET TextString = REPLACE(TextString, '&nbsp;',' ') ; END IF ; #inverted exclamation mark IF INSTR( X , '&iexcl;' ) THEN SET TextString = REPLACE(TextString, '&iexcl;','¡') ; END IF ; #cent IF INSTR( X , '&cent;' ) THEN SET TextString = REPLACE(TextString, '&cent;','¢') ; END IF ; #pound IF INSTR( X , '&pound;' ) THEN SET TextString = REPLACE(TextString, '&pound;','£') ; END IF ; #currency IF INSTR( X , '&curren;' ) THEN SET TextString = REPLACE(TextString, '&curren;','¤') ; END IF ; #yen IF INSTR( X , '&yen;' ) THEN SET TextString = REPLACE(TextString, '&yen;','¥') ; END IF ; #broken vertical bar IF INSTR( X , '&brvbar;' ) THEN SET TextString = REPLACE(TextString, '&brvbar;','¦') ; END IF ; #section IF INSTR( X , '&sect;' ) THEN SET TextString = REPLACE(TextString, '&sect;','§') ; END IF ; #spacing diaeresis IF INSTR( X , '&uml;' )
以上是如何在 MySQL 中解碼 HTML 實體?的詳細內容。更多資訊請關注PHP中文網其他相關文章!