24 private static $fileKeys = array(
'error',
'name',
'size',
'tmp_name',
'type');
39 public function replace(array $files = array())
41 $this->parameters = array();
48 public function set($key, $value)
50 if (!is_array($value) && !$value instanceof
UploadedFile) {
51 throw new \InvalidArgumentException(
'An uploaded file must be an array or an instance of UploadedFile.');
60 public function add(array $files = array())
62 foreach ($files as $key => $file) {
63 $this->
set($key, $file);
81 if (is_array($file)) {
82 $keys = array_keys($file);
85 if ($keys == self::$fileKeys) {
86 if (UPLOAD_ERR_NO_FILE == $file[
'error']) {
89 $file =
new UploadedFile($file[
'tmp_name'], $file[
'name'], $file[
'type'], $file[
'size'], $file[
'error']);
92 $file = array_map(array($this,
'convertFileInformation'), $file);
117 if (!is_array($data)) {
121 $keys = array_keys($data);
124 if (self::$fileKeys != $keys || !isset($data[
'name']) || !is_array($data[
'name'])) {
129 foreach (self::$fileKeys as $k) {
133 foreach ($data[
'name'] as $key => $name) {
135 'error' => $data[
'error'][$key],
137 'type' => $data[
'type'][$key],
138 'tmp_name' => $data[
'tmp_name'][$key],
139 'size' => $data[
'size'][$key],