현재 위치: > 최신 기사 목록> 서버 루트에 PHP 파일 업로드에 대한 전체 가이드

서버 루트에 PHP 파일 업로드에 대한 전체 가이드

M66 2025-10-20

PHP에서 루트 디렉토리에 파일을 업로드하는 방법

PHP 프로젝트에서는 서버 루트 디렉터리에 직접 파일을 업로드해야 하는 경우가 있습니다. 이 기능 구현에는 주로 파일 업로드 처리, 파일 형식 확인, 고유한 파일 이름 생성과 같은 단계가 포함됩니다.

파일 업로드 처리 및 유형 유효성 검사

<?php
// 업로드가 허용되는 파일 형식 지정
$allowedTypes = ['image/jpeg', 'image/png', 'image/gif'];

// 파일 업로드
if (isset($_FILES['file']) && $_FILES['file']['error'] == 0) {
    // 파일 형식 가져오기
    $fileType = $_FILES['file']['type'];

    // 파일 형식이 허용되는지 확인하세요.
    if (!in_array($fileType, $allowedTypes)) {
        echo '허용되지 않는 파일 형식。';
        exit;
    }

    // 파일 확장자 가져오기
    $extension = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);

    // 새 파일 이름 생성(타임스탬프와 함께 임의의 값 추가)
    $newFileName = time() . '_' . rand(1, 999) . '.' . $extension;

    // 파일을 루트 디렉터리로 이동
    $uploadPath = getcwd() . '/' . $newFileName;
    move_uploaded_file($_FILES['file']['tmp_name'], $uploadPath);

    echo '파일이 성공적으로 업로드되었습니다.!';
} else {
    echo '파일 업로드 실패。';
}
?>

HTML 양식 예

프런트엔드에서는 파일 업로드를 위한 양식을 제공해야 합니다.

<form action="upload.php" method="post" enctype="multipart/form-data">
    <input type="file" name="file">
    <input type="submit" value="업로드">
</form>

요약

위의 방법을 사용하면 PHP 서버의 루트 디렉터리에 파일을 안전하게 업로드하는 데 도움이 될 수 있습니다. 업로드 프로세스 중에 파일 형식을 확인하고 고유한 파일 이름을 사용하여 기존 파일을 덮어쓰지 않도록 하세요. 적절한 프런트엔드 양식과 백그라운드 처리를 통해 파일 업로드 작업을 간단하고 효율적으로 완료할 수 있습니다.