File Upload

PHP is able to receive files as part of a form submission.

PHP is capable of receiving file uploads from any RFC-1867 compliant browser.

File upload code is based on the $_FILES superglobal, and move_uploaded_file() function. It also relies on several PHP directives : file_uploads, upload_max_filesize, upload_tmp_dir, post_max_size and max_input_time.

<?php
$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo 'File is valid, and was successfully uploaded.';
} else {
    echo 'Possible file upload attack!';
}

?>

Documentation

See also Learn Everything About File Upload in PHP With Examples

Related : $_FILES