PHP - 上传多个文件

Tox*_*xid 5 php forms wordpress upload plugins

我正在开发一个wordpress插件,我希望能够从表单上传多张图片.现在,当我有两张图片的表单并将其提交为空时,我的$ _FILES数组如下所示:

Array (
    [image] => Array ( 
        [name] => Array ( 
            [1] => 
            [2] =>
        ) 
        [type] => Array ( 
            [1] => 
            [2] =>
        ) 
        [tmp_name] => Array ( 
            [1] => 
            [2] =>
        ) 
        [error] => Array ( 
            [1] => 4 
            [2] => 4
        ) 
        [size] => Array ( 
            [1] => 0 
            [2] => 0 
        ) 
    ) 
)
Run Code Online (Sandbox Code Playgroud)

现在的问题是我想使用wordpress'上传处理程序,wp_handle_upload.它期望$ _FILES数组作为参数,但只有一个文件.我想它只能是两个阵列深,而不是我的三个阵列.所以我想知道是否有办法从$ _FILES数组中一次提交一个文件.每个数组中的文件具有相同的密钥.

编辑:改变了帖子,因为我了解到wp_handle_upload想要$ _FILES数组作为参数.

cas*_*nca 18

尝试:

$files = $_FILES['image'];
foreach ($files['name'] as $key => $value) {
  if ($files['name'][$key]) {
    $file = array(
      'name'     => $files['name'][$key],
      'type'     => $files['type'][$key],
      'tmp_name' => $files['tmp_name'][$key],
      'error'    => $files['error'][$key],
      'size'     => $files['size'][$key]
    );
    wp_handle_upload($file);
  }
}
Run Code Online (Sandbox Code Playgroud)