Загрузите и зашифруйте файл, используя Zend_File_Transfer_Adapter_Http - PullRequest
0 голосов
/ 09 января 2012

В документации Zend Framework под названием " Filters for Zend_File_Transfer " говорится, что файл может быть зашифрован и сохранен под другим именем с использованием опции filename .

Этот фильтр поддерживает одну дополнительную опцию, которую можно использовать для сохранения зашифрованного файла с другим именем файла. Установите параметр filename , чтобы изменить имя файла, в котором будет храниться зашифрованный файл. Если вы отключите эту опцию, зашифрованный файл перезапишет исходный файл.

Как мне указать опцию имени файла? Я попробовал:

$upload = new Zend_File_Transfer_Adapter_Http();
$upload->addFilter('Encrypt', array('adapter' => 'mcrypt', 'key' => 'mykey'), 'file.txt');

и

$upload = new Zend_File_Transfer_Adapter_Http();
$upload->addFilter('Encrypt', array('adapter' => 'mcrypt', 'key' => 'mykey', 'filename' => 'file.txt'));

кажется, что оба не работают.

1 Ответ

2 голосов
/ 09 января 2012

Я посмотрел на Zend/File/Transfer/Adapter/Http.php, и не похоже, что имя файла является допустимой опцией для этого адаптера.
Может быть, это ошибка в документации.
Вместо этого вы могли быиспользуйте Rename -Filter, чтобы изменить имя файла.

$upload = new Zend_File_Transfer_Adapter_Http();

$upload->addFilter('Rename', array('target' => APPLICATION_PATH . '/../data/file.txt'));
$upload->addFilter('Decrypt', array('adapter' => 'mcrypt', 'key' => 'mykey'));

$upload->receive();
...