[ 'required', 'file', 'mimes:csv,txt', // phpcs:ignore Generic.Files.LineLength.TooLong 'mimetypes:text/csv,text/plain,application/csv,text/comma-separated-values,text/anytext,application/octet-stream,application/txt', // phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter.FoundInExtendedClassBeforeLastUsed function ($attribute, $value, $fail) { /** @var \Illuminate\Http\UploadedFile */ $uploadedFile = $this->file('import'); $content = $uploadedFile->get(); if ( $uploadedFile->getClientMimeType() !== 'text/csv' && $uploadedFile->getClientMimeType() !== 'application/vnd.ms-excel' ) { $fail(__('Le fichier doit ĂȘtre d\'un mime type text/csv ou application/vnd.ms-excel')); } if (!$content or mb_detect_encoding($content, ['ISO-8859-1'], true) !== 'ISO-8859-1') { $fail(__('Le fichier doit etre encodĂ© en ISO-8859-1')); } } ] ]; } }