Следовал инструкции: https://yiiframework.com.ua/ru/doc/guid ... le-upload/.
Код: Выделить всё
class DocumentForm extends Model
{
public $files = [];
public function rules()
{
return [
[['files'], 'file', 'skipOnEmpty' => true, 'extensions' => ['pdf'], 'maxFiles' => 3],
];
}
}
Код: Выделить всё
$form = = new DocumentForm();
$form->files = UploadedFile::getInstances($form, 'files');
$form->validate();
Код: Выделить всё
frontend\models\forms\DocumentForm Object
(
[files] => Array
(
[0] => yii\web\UploadedFile Object
(
[name] => pj5LgR3QeVwammYfGa_-s6QEwEEp8iq5.pdf
[tempName] => /tmp/phpqElyOZ
[type] => application/pdf
[size] => 103489
[error] => 0
)
[1] => yii\web\UploadedFile Object
(
[name] => sample.pdf
[tempName] => /tmp/phpIuNN7p
[type] => application/pdf
[size] => 3028
[error] => 0
)
)
[_errors:yii\base\Model:private] =>
[_validators:yii\base\Model:private] =>
[_scenario:yii\base\Model:private] => default
[_events:yii\base\Component:private] => Array
(
)
[_eventWildcards:yii\base\Component:private] => Array
(
)
[_behaviors:yii\base\Component:private] =>
)
// Вывод через $form->getErrors();
(
[files] => Array
(
[0] => Разрешена загрузка файлов только со следующими расширениями: pdf.
)
)
Если загружать 1 файл то валидация проходит.
Код: Выделить всё
frontend\models\forms\DocumentForm Object
(
[files] => Array
(
[0] => yii\web\UploadedFile Object
(
[name] => pj5LgR3QeVwammYfGa_-s6QEwEEp8iq5.pdf
[tempName] => /tmp/phpqElyOZ
[type] => application/pdf
[size] => 103489
[error] => 0
)
)
[_errors:yii\base\Model:private] =>
[_validators:yii\base\Model:private] =>
[_scenario:yii\base\Model:private] => default
[_events:yii\base\Component:private] => Array
(
)
[_eventWildcards:yii\base\Component:private] => Array
(
)
[_behaviors:yii\base\Component:private] =>
)
// Это ОК