☞ htmlspecialchars (PHP4, PHP5)
이 함수는 문자열에서 특정한 특수 문자를 HTML 엔티티로 변환한다. 이함수를 사용하면 악성 사용자로 부터 XSS 공격을 방지 할 수 있다. 변환되는 문자는 아래와 같다.
특수 문자 |
변환된 문자 |
&(앰퍼샌드) |
& |
""(겹따옴표) |
" |
''(홑따옴표) |
' |
<(미만) |
< |
>(이상) |
> |
구조(structure)
string htmlspecialchars ( string $string [, int $quote_style [, string $charset [, bool $double_encode ]]] )
인자(paramiter)
string $string
HTML 엔티티로 변환할 문자열
int $quote_style
이 값은 ''(홑따옴표) 와 ""(겹따옴표) 의 처리방식을 지정한다. 이 값을 생략 시 기본값은 ENT_COMPAT 를 갖는다. 이 값으로 올 수 있는 상수들은 아래와 같다.
int $quote_style 값으로 지정할 수 있는 상수
ENT_COMPAT : 기본모드로, 겹따옴표만 변환
ENT_QUOTES : ''(홑따옴표) 와 ""(겹따옴표) 둘다 변환
ENT_NOQUOTES : ''(홑따옴표) 와 ""(곁따옴표) 둘다 변환하지 않음
string $charset
이 값에는 변환에 사용할 문자셋을 지정할 수 있다. 이값을 생략하면 기본 문자셋 값으로 ISO-8859-1 을 갖는다.
bool $double_encode
이 값은 이미 존재하는 HTML 엔티티를 encode 할지 않을 지를 true 와 false 값으로 지정할 수 있다. 이 값을 생략할 시 기본값은 true 를 갖는다. (PHP 5.2.3 에서 추가되었다)
반환(return)
HTML 엔티티로 변환된 문자열을 반환
예제(example) 1
<?php $entity= "<b>b 요소가 삭제 되어 출력화면에 나타난다.</b>"; echo htmlspecialchars($entity); ?>
결과(result)
<b>b 요소가 삭제 되어 출력화면에 나타난다.</b>
예제(example) 2
<?php $entity= "<?php echo 'php 구문도 엔티티로 변환이 된다.'; ?>"; echo htmlspecialchars($entity); ?>
결과(result)
<?php echo '안녕하세요'; ?>
'웹프로그래밍 > PHP 메뉴얼' 카테고리의 다른 글
PHP 문자열 관련 함수 - md5 (230) | 2015.03.24 |
---|---|
PHP 문자열 관련 함수 - htmlspecialchars_decode (233) | 2015.03.23 |
PHP 문자열 관련 함수 - strtoupper (231) | 2015.03.23 |
PHP 문자열 관련 함수 - strtolower (231) | 2015.03.23 |
PHP 문자열 관련 함수 - mb_strlen (235) | 2015.03.23 |