В настоящее время я использую symfony 1.4 и хочу разрешить пользователям загружать файлы Microsoft Word docx. Использование виджета sfWidgetFormInputFile и sfValidatorFile ниже пользователи могут выбирать и успешно загружать свои файлы docx с помощью простой веб-формы.Загруженные файлы docx превращаются в zip
$this->widgetSchema['file_name'] = new sfWidgetFormInputFile(array('label' => 'File'));
$this->validatorSchema['file_name'] = new sfValidatorFile(array(
'required' => true,
'path' => sfConfig::get('sf_upload_dir').DIRECTORY_SEPARATOR.sfConfig::get('app_dir_file_sharing').DIRECTORY_SEPARATOR,
'mime_types' => array('application/msword',
'application/vnd.ms-word',
'application/msword',
'application/msword; charset=binary')
), array(
'invalid' => 'Invalid file.',
'required' => 'Select a file to upload.',
'mime_types' => 'The file must be a supported type.'
));
Проблема заключается в том, что после того, как файл будет загружен, то расширение меняется на .zip и файл содержит файл дерево XML-файлов. Я понимаю, что это потому, что Office 2007 теперь использует Open xml-файлы. Есть ли способ предотвратить это, используя symfony или PHP?
Это также относится и к XLSX файлы – markb