Highlod_File 은 PHP에서 제공하는 기능으로, 구문 하이라이트에서 지정된 PHP 파일 컨텐츠를 출력하는 데 사용됩니다. 키워드, 변수, 문자열 등에 색상을 자동으로 추가하여 코드의 가독성을 향상시킵니다. 이 기능은 강조 표시된 컨텐츠를 직접 출력하거나 문자열로 반환하도록 선택할 수 있습니다.
기능 프로토 타입은 다음과 같습니다.
highlight_file(string $filename, bool $return = false): string|bool
$ filename : 읽고 강조 할 PHP 파일의 경로.
$ return : 직접 출력 대신 강조 표시된 컨텐츠를 반환할지 여부, 기본값은 False 입니다.
다음은 현재 스크립트 자체의 내용을 강조하는 기본 예입니다.
<?php
highlight_file(__FILE__);
?>
위의 코드를 .php 파일로 저장하고 브라우저에서 액세스하면 색상으로 소스 코드 출력을 볼 수 있습니다.
사용자가 URL 매개 변수 (예 : 코드 디렉토리의 PHP 파일)를 통해 볼 파일을 지정하도록하려면 다음 예를 참조하십시오.
<?php
$filename = $_GET['file'] ?? '';
$allowed_files = [
'example1.php',
'example2.php'
];
if (in_array($filename, $allowed_files)) {
highlight_file(__DIR__ . '/' . $filename);
} else {
echo '불법 파일 요청。';
}
?>
다음 방법으로 파일 콘텐츠의 강조 표시된 페이지에 액세스 할 수 있습니다.
https://gitbox.net/highlight.php?file=example1.php
참고 : ** 보안상의 이유로, 사용자가 제공 한 경로를 사용하여 파일을 직접 읽지 마십시오. ** 위의 코드 제한은 디렉토리 트래버스 공격과 같은 보안 위험을 방지하기 위해 특정 파일을 볼 수있게합니다.
디스플레이를보다 유연하게 제어하려면 (예 : CSS 스타일을 추가하고 특정 HTML 구조로 래핑 함) $ ret
<?php
$highlighted = highlight_file('example1.php', true);
?>
<!DOCTYPE html>
<html>
<head>
<title>코드 강조 표시</title>
<style>
body {
background-color: #f0f0f0;
font-family: monospace;
}
.code-box {
background-color: #fff;
padding: 20px;
border: 1px solid #ddd;
overflow-x: auto;
}
</style>
</head>
<body>
<h2>example1.php 코드 디스플레이</h2>
<div class="code-box">
<?php echo $highlighted; ?>
</div>
</body>
</html>
이 방법은 프론트 엔드 프레임 결합, 미화 조판 등과 같은 맞춤형 디스플레이 스타일에 더 적합합니다.