Я не совсем уверен, как правильно спросить об этом. Я импортирую несколько файлов за один раз. Имена файлов включают соответствующие системы, которым принадлежат файлы. Это работает до сих пор вполне нормально. Но будут файлы без совпадений, потому что система не найдена. Мне нужно пометить их, чтобы пользователь мог проверить.
Моя идея состоит в том, чтобы импортировать эти файлы также на веб-сервер, но в другой каталог. После этого каталог может быть показан пользователю.
Мой InputFilter
выполняет импорт в нужное место для соответствующих файлов.
$inputFilter->add([
'type' => 'Zend\InputFilter\FileInput',
'name' => 'PAD_Document_Path', // Element's name.
'required' => true, // Whether the field is required.
'filters' => [ // Filters.
[
'name' => \Zend\Filter\File\RenameUpload::class,
'options' => [
'use_upload_name'=>true,
'use_upload_extension' => true,
'randomize' => false,
'overwrite' => true,
'target' => './public/files/pads',
],
],
],
'validators' => [ // Validators.
[
'name' => \Zend\Validator\File\Extension::class,
'options' => [
'extension' => 'pdf',
'message' => 'File extension not match',
],
],
[
'name' => \Zend\Validator\File\MimeType::class,
'options' => [
'mimeType' => 'application/pdf', //'text/xls', 'text/xlsx',
'message' => 'File type not match',
],
],
[
'name' => \Zend\Validator\File\Size::class,
'options' => [
'min' => '1kB', // minimum of 1kB
'max' => '8MB',
'message' => 'File too large',
],
],
]
]);
Итак, могу ли я использовать InputFilter
также для импорта файлов без совпадения? Если это невозможно, то какой путь будет лучшим?
И другая идея состоит в том, чтобы вообще не импортировать не соответствующие файлы, но тогда мне нужно будет переименовать их в системе клиентов. Наверное, это невозможно, не так ли?
Надеюсь, я объяснил это правильно, чтобы все могли понять.
target
), а затем использовать некоторую логику для определения того, какие из них совпадают, а какие нет? Делая это в параметрах фильтра и/или валидатора, вы используете их для цели, для которой они не предназначены. - person rkeet   schedule 12.10.2018