2

我有一个输入类似于此的表单:

<p><label>Image 1: </label><input type="file" name="candy"></p>
<p><label>Image 2: </label><input type="file" name="apple"></p>
<p><label>Image 3: </label><input type="file" name="red"></p>

使用 $_Files 循环,我想知道是否可以获取上传文件的输入元素的输入字段名称(不是值)?

foreach($_FILES as $file) {
  /*
  do image processing here, but would like to save as 
  'candy.jpg' rather than $file['name'].
  */
}

所以我希望能够在不知道它是什么的情况下获得字段名称“糖果”或“苹果”。到目前为止,我所看到的一切都假设在处理文件时已经知道“糖果”。

换句话说,我想从上传的文件向后工作到它上传的元素。这可以用PHP吗?

更新了解决方案:

foreach($_FILES as $key=>$file) { 
  $image = new Imagick($file['tmp_name']); 
  // do some processing 
  $image->writeImage($key.'.jpg'); 
}

将根据输入字段名称给出“candy.jpg”或“apple.jpg”。

4

2 回答 2

1

尝试

foreach($_FILES as $nameOfInputFile => $file) {

    // your stuff

}

$_FILES是一个数组,其索引为您的输入的名称(文件类型)

于 2013-03-13T06:01:33.333 回答
0

foreach您可以在语句中请求密钥。

foreach($_FILES as $key=>$file) {

}
于 2013-03-13T06:02:32.093 回答