Magento1: Загрузка файлов в Magento

При написании модуля для CMS Magento (Мадженто) или интеграции для Magento, иногда необходима загрузка файлов на сервер.

Для работы с загруженным файлом на сервер можно использовать PHP класс ядра Magento – Varien_File_Uploader.

Используя метод setAllowedExtensions – можно задать какие типы файлов доступны для загрузки.
price_csv – имя поля в HTML форме загрузки файла.

if (isset($_FILES['price_csv']['name']) && $_FILES['price_csv']['name'] != '') {
    try {  
        $uploader = new Varien_File_Uploader('price_csv');
        $uploader->setAllowedExtensions(array('csv','xml'));
        $uploader->setAllowRenameFiles(false);
        $uploader->setFilesDispersion(false);
        $path = Mage::getBaseDir('media') . DS; // путь для сохранения
        $fileName = $_FILES['price_csv']['name']; // имя для нового файла
        $uploader->save($path, $fileName);

    } catch (Exception $e) {

    }
}