다음 코드의 실행 결과는?

과목: PHP

문제 번호: 2962

medium
다음 코드의 실행 결과는?
$str = "<h1>Hello World!</h1>";
$newstr = filter_var($str, FILTER_SANITIZE_STRING);
echo $newstr;
A. <h1>Hello World!</h1> (원본 그대로)
B. Hello World! (HTML 태그 제거)
C. &lt;h1&gt;Hello World!&lt;/h1&gt; (HTML 엔티티 변환)
D. 빈 문자열

정답: B



FILTER_SANITIZE_STRING 필터는 문자열에서 HTML 태그를 완전히 제거합니다.

⦁ FILTER_SANITIZE_STRING 동작:
⦁ HTML 및 PHP 태그 제거
⦁ NULL 바이트 제거
⦁ 옵션에 따라 특수문자 처리

⦁ 처리 과정:
1. 입력: <h1>Hello World!</h1>
2. HTML 태그 <h1>, </h1> 제거
3. 결과: Hello World!

⦁ 다른 정제 방법과의 차이:
htmlspecialchars(): 태그를 엔티티로 변환 (&lt; 등)
strip_tags(): 태그만 제거 (동일한 결과)
FILTER_SANITIZE_STRING: PHP 권장 방법

⦁ 실무 활용: 사용자 입력에서 스크립트 태그 제거, XSS 방지

💡 학습 팁

이 문제를 포함한 PHP 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.