>  기사  >  백엔드 개발  >  PHP htmlspecialchars()와 Strip_tags 함수의 차이점

PHP htmlspecialchars()와 Strip_tags 함수의 차이점

怪我咯
怪我咯원래의
2017-06-08 14:15:281918검색

php htmlspecialchars() 및 Strip_tags 함수는 모두 HTML 코드의 형식을 지정합니다. 많은 사람들이 htmlentities와 htmlspecialchars의 함수가 동일하다고 생각하지만 실제로는 동일합니까? 대답은 '아니요'입니다. 그렇지 않으면 그런 기능이 없습니다. 기사에서는 php htmlspecialchars()와 Strip_tags 함수의 차이점을 안내합니다.

먼저 htmlspecialchars 함수와 Strip_tags 함수의 사용 예를 살펴보겠습니다.

<?php
$str="<a href=&#39;http://www.php.cn&#39;>php中文网</a>";
echo htmlspecialchars($str);
echo "<br><br>";
echo strip_tags($str);
?>

브라우저에서 코드를 실행한 결과:

PHP htmlspecialchars()와 Strip_tags 함수의 차이점

페이지 소스 코드를 보면 결과는 다음과 같습니다.

<a href=&#39;http://www.php.cn&#39;>php中文网&#39;"</a><br/><br/>php中文网&#39;"

결과에서 htmlspecialchars()와 Strip_tags의 차이점은 다음과 같습니다.

차이점 1:

strip_tags 함수를 사용함 HTML 태그를 제거하는 반면 htmlspecialchars는 태그를 HTML 인스턴스로 변환하기만 하므로 둘 사이의 가장 큰 차이점은 하나는 HTML 태그를 삭제하는 것이고 다른 하나는 html 태그를 다른 태그로 변환하는 것입니다. 문자.

차이점 2:

HTML 태그에서 제거해야 하는 문자열의 태그가 원래 잘못된 경우(예: 보다 큼 기호가 누락된 경우) Strip_tags 함수를 사용할 때 오류가 반환되지만 htmlspecialchars는 오류가 없으며 HTML 엔터티 이후에도 계속 변환됩니다.

차이점 3:

XSS 공격을 방지할 때는 일반적으로 htmlspecialchars 기능을 사용하는 것이 좋습니다. 왜냐하면 Strip_tags가 HTML 태그를 삭제할 수는 있지만 " 또는 '는 삭제되지 않기 때문입니다. 따라서 Strip_tags를 사용하더라도 여전히 htmlspecialchars 기능을 사용해야 합니다. htmlspecialchars 함수를 사용하여 Drop " 또는 '

양식 제출 또는 사용자 메시지 게시판에서 데이터의 원본 출력을 브라우저로 전송하려면 Strip_tags 함수 대신 htmlspecialchars 함수를 사용하십시오.

【관련 추천 글】

php

php의 htmlspecialchars, Strip_tags, addlashes 함수에 대한 간략한 소개 문자열 태그 제거를 위한 Strip_tags() 함수 예제에 대한 자세한 설명

위 내용은 PHP htmlspecialchars()와 Strip_tags 함수의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.