PHP에서 특수문자처리를 위해 사용하기 좋은 함수가 하나 있습니다. 바로 get_html_translation_table() 함수인데요, / 나 & 와 같이 URL 에 사용시 문제가 될수있는 캐릭터들을 확인하고 검사/변환하는데 기본적인 사전역할을 해줄 수 있습니다.
get_html_translation_table(function,flags,character-set)
위와 같이 정의가 되는데요, 인자로 전달되는 값은 다음과 같은 값이 가능합니다
첫번째 인자인 function 은 아래와 같이 두가지 옵션이 가능합니다. 사실 HTML_SPECIALCHARS 는 HTML_ENTITIES 안에 포함되어 있는 특수문자입니다. 다만, 주소표시등에 사용하면 문제가될 수있는 몇개의 특수문자만 따로 확인할 수 있도록 HTML_SPECIALCHARS 옵션을 별도로 둔 것입니다.
HTML_SPECIALCHARS
HTML_ENTITIES
위 인자값은 필수입력항목은 아니고 옵션입니다. 따옴표나 쌍따옴표를 함수의 결과값에 포함시킬지 말지 등을 설정할 수 있는 값입니다. 이또한, 데이터베이스 쿼리등을 실행할때 문제가 생길 수 있는 특수문자 이기 때문에 DB작없시 입력값을 검증할 때 사용하기 좋습니다.
ENT_COMPAT - 기본값으로 쌍따옴표는 포함하되 홑따옴표는 제외합니다
ENT_QUOTES - 쌍따옴표, 홑따옴표를 모두 포함합니다.
ENT_NOQUOTES - 쌍따옴표, 홑따옴표를 모두 포함하지 않습니다
세번째 인자는 말 그대로 문자의 캐릭터셑을 지정하기 위한 옵션입니다. 근데 옵션중에 euc-kr 은 없네요,
UTF-8 - Default. ASCII compatible multi-byte 8-bit Unicode
ISO-8859-1 - Western European
ISO-8859-15 - Western European (adds the Euro sign + French and Finnish letters missing in ISO-8859-1)
cp866 - DOS-specific Cyrillic charset
cp1251 - Windows-specific Cyrillic charset
cp1252 - Windows specific charset for Western European
KOI8-R - Russian
BIG5 - Traditional Chinese, mainly used in Taiwan
GB2312 - Simplified Chinese, national standard character set
BIG5-HKSCS - Big5 with Hong Kong extensions
Shift_JIS - Japanese
EUC-JP - Japanese
MacRoman - Character-set that was used by Mac OS
아래와 같이 실행시켜보면
print_r (get_html_translation_table(HTML_SPECIALCHARS));
다음과 같이 출력되게 됩니다.
Array
(
["] => "
[&] => &
[<] => <
[>] => >
)
또한, 아래와 같이 실행시키면
print_r (get_html_translation_table(HTML_ENTITIES));
HTML 의 모든 특수문자가 출력됩니다.
Array
(
["] => "
[&] => &
[<] => <
[>] => >
[ ] =>
[¡] => ¡
[¢] => ¢
[£] => £
[¤] => ¤
[¥] => ¥
[¦] => ¦
[§] => §
[¨] => ¨
[©] => ©
[ª] => ª
[«] => «
[¬] => ¬
[�] =>
[®] => ®
[¯] => ¯
[°] => °
[±] => ±
[²] => ²
[³] => ³
[´] => ´
[µ] => µ
[¶] => ¶
[·] => ·
[¸] => ¸
[¹] => ¹
[º] => º
[»] => »
[¼] => ¼
[½] => ½
[¾] => ¾
[¿] => ¿
[À] => À
[Á] => Á
[Â] => Â
[Ã] => Ã
[Ä] => Ä
[Å] => Å
[Æ] => Æ
[Ç] => Ç
[È] => È
[É] => É
[Ê] => Ê
[Ë] => Ë
[Ì] => Ì
[Í] => Í
[Î] => Î
[Ï] => Ï
[Ð] => Ð
[Ñ] => Ñ
[Ò] => Ò
[Ó] => Ó
[Ô] => Ô
[Õ] => Õ
[Ö] => Ö
[×] => ×
[Ø] => Ø
[Ù] => Ù
[Ú] => Ú
[Û] => Û
[Ü] => Ü
[Ý] => Ý
[Þ] => Þ
[ß] => ß
[à] => à
[á] => á
[â] => â
[ã] => ã
[ä] => ä
[å] => å
[æ] => æ
[ç] => ç
[è] => è
[é] => é
[ê] => ê
[ë] => ë
[ì] => ì
[í] => í
[î] => î
[ï] => ï
[ð] => ð
[ñ] => ñ
[ò] => ò
[ó] => ó
[ô] => ô
[õ] => õ
[ö] => ö
[÷] => ÷
[ø] => ø
[ù] => ù
[ú] => ú
[û] => û
[ü] => ü
[ý] => ý
[þ] => þ
[ÿ] => ÿ
[Œ] => Œ
[œ] => œ
[Š] => Š
[š] => š
[Ÿ] => Ÿ
[ƒ] => ƒ
[ˆ] => ˆ
[˜] => ˜
[Α] => Α
[Β] => Β
[Γ] => Γ
[Δ] => Δ
[Ε] => Ε
[Ζ] => Ζ
[Η] => Η
[Θ] => Θ
[Ι] => Ι
[Κ] => Κ
[Λ] => Λ
[Μ] => Μ
[Ν] => Ν
[Ξ] => Ξ
[Ο] => Ο
[Π] => Π
[Ρ] => Ρ
[Σ] => Σ
[Τ] => Τ
[Υ] => Υ
[Φ] => Φ
[Χ] => Χ
[Ψ] => Ψ
[Ω] => Ω
[α] => α
[β] => β
[γ] => γ
[δ] => δ
[ε] => ε
[ζ] => ζ
[η] => η
[θ] => θ
[ι] => ι
[κ] => κ
[λ] => λ
[μ] => μ
[ν] => ν
[ξ] => ξ
[ο] => ο
[π] => π
[ρ] => ρ
[ς] => ς
[σ] => σ
[τ] => τ
[υ] => υ
[φ] => φ
[χ] => χ
[ψ] => ψ
[ω] => ω
[ϑ] => ϑ
[ϒ] => ϒ
[ϖ] => ϖ
[ ] =>
[ ] =>
[ ] =>
[] =>
[] =>
[] =>
[] =>
[–] => –
[—] => —
[‘] => ‘
[’] => ’
[‚] => ‚
[“] => “
[”] => ”
[„] => „
[†] => †
[‡] => ‡
[•] => •
[…] => …
[‰] => ‰
[′] => ′
[″] => ″
[‹] => ‹
[›] => ›
[‾] => ‾
[⁄] => ⁄
[€] => €
[ℑ] => ℑ
[℘] => ℘
[ℜ] => ℜ
[™] => ™
[ℵ] => ℵ
[←] => ←
[↑] => ↑
[→] => →
[↓] => ↓
[↔] => ↔
[↵] => ↵
[⇐] => ⇐
[⇑] => ⇑
[⇒] => ⇒
[⇓] => ⇓
[⇔] => ⇔
[∀] => ∀
[∂] => ∂
[∃] => ∃
[∅] => ∅
[∇] => ∇
[∈] => ∈
[∉] => ∉
[∋] => ∋
[∏] => ∏
[∑] => ∑
[−] => −
[∗] => ∗
[√] => √
[∝] => ∝
[∞] => ∞
[∠] => ∠
[∧] => ∧
[∨] => ∨
[∩] => ∩
[∪] => ∪
[∫] => ∫
[∴] => ∴
[∼] => ∼
[≅] => ≅
[≈] => ≈
[≠] => ≠
[≡] => ≡
[≤] => ≤
[≥] => ≥
[⊂] => ⊂
[⊃] => ⊃
[⊄] => ⊄
[⊆] => ⊆
[⊇] => ⊇
[⊕] => ⊕
[⊗] => ⊗
[⊥] => ⊥
[⋅] => ⋅
[⌈] => ⌈
[⌉] => ⌉
[⌊] => ⌊
[⌋] => ⌋
[〈] => 〈
[〉] => 〉
[◊] => ◊
[♠] => ♠
[♣] => ♣
[♥] => ♥
[♦] => ♦
)
CSS 입력폼 크기, 정렬, 크롬/익스플로러/엣지 동일하게 표현하기 (0) | 2020.02.16 |
---|---|
브라우저 높이 구하기, explorer, chrome,safari 등 웹사이트 높이 (0) | 2019.11.12 |
html 배경음악 자동재생 ... 크롬정책변경으로 인한 대응, audio autoplay in HTML (21) | 2019.07.18 |
html canvas 내용을 동영상으로 / 캔버스 내용을 동영상으로 / 캔버스 애니메이션을 동영상으로 변환, 저장, 스트리밍 (1) | 2019.07.06 |
웹표준 HTML 마크업/ 웹사이트 정보 표시하기/ 사이트설명 (0) | 2019.07.05 |
댓글 영역