반응형
PHP 프로그램에서 HTML을 안전하게 출력하는 방법은 무엇입니까?
PHP에서 이 작업을 수행할 때 다음과 같은 문제가 발생할 수 있습니다.
<span title="<?php echo $variable;?>">...
문제는 만약에$variable
큰따옴표 포함, 이를 로 변경해야 합니다.\"
그리고 그것이 아직 전부는 아닙니다.
<span title='<?php echo $variable;?>'>...
이 경우 단일 따옴표를 다음으로 변경해야 합니다.\'
이중 따옴표는 그대로 둡니다.
또한 변수 값에는 HTML을 방해하는 대괄호 < 및 >가 포함될 수 있습니다.
그렇다면 어떻게 하면 HTML의 출력을 안전하게 피할 수 있을까요?
항상 HTML 특성 내의 항목을 HTML 인코딩하려고 합니다. 이 작업은 다음과 같이 수행할 수 있습니다.
<span title="<?php echo htmlspecialchars($variable); ?>">
두 번째 파라미터($quote_style
) ~로ENT_QUOTES
.
유일한 잠재적 위험은$variable
이미 인코딩되어 있을 수 있으므로 마지막 파라미터를 설정할 수 있습니다.$double_encode
) ~로false
.
HTML로 텍스트를 출력하기 전에 html 특수 문자()를 사용하여 이스케이프해야 합니다.따라서 (이중) 따옴표가 올바르게 변경되었는지 확인하십시오.
해당 함수의 두 번째 매개 변수에 주목합니다.
Bat 도구에는 작업도 수행하는 StringTool::htmlAttributes($arrayOfAttributes) 메서드가 있습니다.
https://github.com/lingtalfi/Bat/blob/master/StringTool.php
언급URL : https://stackoverflow.com/questions/2109583/how-to-safely-output-html-from-a-php-program
반응형
'programing' 카테고리의 다른 글
제출하기 전에 어떻게 해야 합니까? (0) | 2023.07.24 |
---|---|
Oracle(PL/)SQL의 문자열 형식 (0) | 2023.07.24 |
각각 하위 명령 집합이 있는 클릭 명령을 여러 파일로 분할하려면 어떻게 해야 합니까? (0) | 2023.07.24 |
터미널에서 Python Script 명령 실행 (0) | 2023.07.19 |
부동 소수점 숫자를 가장 가까운 정수로 반올림하시겠습니까? (0) | 2023.07.19 |