$ _ FILES является суперглобальным, как $ _GET или $ _POST, который хранит информацию о загруженном файле.
Если имя вашего элемента формы ввода для загрузки является «myfile», тогда после загрузки у вас будет Assiciative array $ _FILES ['myfile'], сохраняющий все данные о загруженном файле. Чтобы узнать об этом, просто var_dump () it:
var_dump($_FILES['myfile']);
Все загруженные файлы, как правило, сначала загружаются в каталог / tmp (или любой другой каталог установлен для этой цели в файле php.ini) , После выполнения некоторых проверок проверки файла (например, тестирования для правильного типа mime), вы захотите перенести файл в конечный пункт назначения. Это то, для чего предназначена функция move_uploaded_file ().
В этом случае $ _FILES ['userfile'] ['tmp_name'] - это временный путь к файлу загруженного файла, а $ uploadfile должен хранить конечный путь файла.