FGETSS 함수는 PHP의 함수로 파일에서 줄을 읽고 HTML 및 PHP 태그를 자동으로 필터링합니다. FGETCSV 기능에 따라 개선입니다. FGETCSV와 달리 CSV 형식 파일 만 읽을 수 있으며 FGETS는 일반 파일의 내용을 읽고 잠재적 코드 마크를 제거하여 보안을 향상시킬 수 있습니다.
<span class="fun">문자열 fgetss (자원 $ 핸들 [, int $ length [, String $ allud_tags]]))))</span>
핸들 : 필수 파일의 핸들을 입력하십시오.
길이 : 선택 사항, 읽기 문자의 최대 길이를 지정하면 기본값은 1024입니다.
허용 _tags : 선택 사항, 보관하려는 HTML 태그 목록을 정의합니다.
다음은 FGETS 기능을 사용하여 파일 줄을 읽고 모든 HTML 및 PHP 태그를 필터링하는 방법을 보여주는 기본 예입니다.
$handle = fopen("/tmp/inputfile.txt", "r");
if ($handle) {
while (($buffer = fgetss($handle, 1024)) !== false) {
echo $buffer;
}
if (!feof($handle)) {
echo "파일 오류를 읽습니다";
}
fclose($handle);
}
fopen 함수는 파일을 읽기 전용 모드로 엽니 다. while 루프에서 fgetss는 파일 내용을 라인별로 읽습니다. allend_tags 매개 변수가 지정되지 않으므로 순수한 텍스트가 출력되도록 모든 HTML 및 PHP 태그가 제거됩니다.
HTMLENTITIS 기능과 결합하여 HTML 태그는 엔티티 문자로 변환되어 XSS와 같은 보안 위험을 더욱 방지 할 수 있습니다. 예는 다음과 같습니다.
$filename = "input.txt";
$handle = fopen($filename, "r");
if ($handle) {
while (($buffer = fgetss($handle, 1024)) !== false) {
$buffer = htmlentities($buffer);
echo $buffer;
}
if (!feof($handle)) {
echo "파일 오류를 읽습니다";
}
fclose($handle);
}
이 코드 예제는 모든 컨텐츠 라인 판독 값을 HTML 엔티티에서 변환하여 잠재적 스크립트 주입 위험을 피합니다.
필터링시 특정 특정 HTML 태그를 유지하려면 allud_tags 매개 변수를 사용하여 달성 할 수 있습니다. 예는 다음과 같습니다.
$filename = "input.txt";
$handle = fopen($filename, "r");
if ($handle) {
while (($buffer = fgetss($handle, 1024, '<p><a>')) !== false) {
echo $buffer;
}
if (!feof($handle)) {
echo "파일 오류를 읽습니다";
}
fclose($handle);
}
위의 예에서 FGETS 함수는 모든 HTML 및 PHP 태그를 필터링하지만이를 유지합니다.
및 부분적으로 유지 된 형식이 필요한 시나리오에 적합한 레이블.
FGETSS는 PHP에서 매우 실용적인 파일 읽기 기능입니다. 파일을 읽고 코드 주입 및 크로스 사이트 스크립팅 공격을 피할 때 HTML 및 PHP 태그를 필터링 할 수 있습니다. Htmlentities 기능과 결합하여 데이터 보안을 개선 할 수 있습니다. 동시에, allend_tags 매개 변수는 유연한 태그 유지 제어를 제공하며, 이는 다양한 개발 요구에 적합합니다.