realpath
함수 설명과 샘플 코드
realpath
함수는 상대 경로를 절대 경로로 변환해주는 PHP 내장 함수입니다. 상대 경로를 절대 경로로 변경하여 파일 또는 디렉토리를 지정할 때 유용합니다.
사용법:
string realpath(string $path);
$path
: 상대 경로나 심볼릭 링크 경로를 포함한 파일 경로입니다.
예제:
$relativePath = '../documents/file.txt';
$absolutePath = realpath($relativePath);
if ($absolutePath) {
echo "Absolute path: " . $absolutePath;
} else {
echo "Invalid path.";
}
realpath
함수를 응용한 코드
1. 상대 경로의 파일을 읽어와 출력하기
$relativePath = '../documents/file.txt';
$absolutePath = realpath($relativePath);
if ($absolutePath) {
$content = file_get_contents($absolutePath);
echo $content;
} else {
echo "Invalid path.";
}
realpath
함수와 다른 함수 사용하는 코드
2. 파일 존재 여부 확인하기
$relativePath = '../documents/file.txt';
$absolutePath = realpath($relativePath);
if ($absolutePath && file_exists($absolutePath)) {
echo "File exists.";
} else {
echo "File does not exist.";
}
realpath
함수와 조건문, 반복문 사용하는 샘플 코드
3. 디렉토리 내의 파일 목록 출력하기
$directory = '../documents/';
$absoluteDir = realpath($directory);
if ($absoluteDir && is_dir($absoluteDir)) {
$files = scandir($absoluteDir);
foreach ($files as $file) {
if ($file !== '.' && $file !== '..') {
echo $file . PHP_EOL;
}
}
} else {
echo "Invalid directory.";
}
성능 향상을 위한 팁
realpath
함수는 파일 시스템에 접근하여 경로를 확인하므로 반복적인 호출이 많으면 성능 저하가 발생할 수 있습니다. 가능한 한 한 번 호출한 결과를 캐시하거나 변수에 저장하여 재사용하는 것이 좋습니다.- 파일 작업 전에 디렉토리 및 파일의 존재 여부를 확인하여 유효성을 검사하는 것이 좋습니다. 이를 통해 불필요한 작업을 방지하고 성능을 개선할 수 있습니다.