Are there any security risks to consider when using PHP to upload large files to a server, especially movie files like avi and mp4?

When uploading large files, especially movie files like avi and mp4, there is a risk of running into security vulnerabilities such as denial of service attacks, file size limitations, and potential server overload. To mitigate these risks, it is important to set proper file size limits, validate file types, and use secure file storage methods.

// Set maximum file size limit
$maxFileSize = 100000000; // 100MB

if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_FILES['file'])) {
    $file = $_FILES['file'];

    // Validate file size
    if ($file['size'] > $maxFileSize) {
        die('File size is too large. Max file size allowed is 100MB.');
    }

    // Validate file type
    $allowedTypes = ['video/avi', 'video/mp4'];
    if (!in_array($file['type'], $allowedTypes)) {
        die('Invalid file type. Only AVI and MP4 files are allowed.');
    }

    // Move uploaded file to secure storage location
    $uploadDir = 'uploads/';
    $uploadPath = $uploadDir . $file['name'];

    if (move_uploaded_file($file['tmp_name'], $uploadPath)) {
        echo 'File uploaded successfully.';
    } else {
        echo 'Error uploading file.';
    }
}