沃梦达 / 编程问答 / php问题 / 正文

SILM 3方法getUploadedFiles()返回空数组

Slim 3 method getUploadedFiles() returns an empty array(SILM 3方法getUploadedFiles()返回空数组)

本文介绍了SILM 3方法getUploadedFiles()返回空数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当尝试用测试文件模拟测试时,我遇到了问题。基本上,withUploadedFiles()方法希望我使用一个数组。 正如您在下面看到的,我尝试var_dump查看它是否工作,但在每种情况下数组都是空的。我想知道为什么会这样? 如果我只使用var_dump名为$uploadedFiles的数组,它就会显示内容。

你看到我的错误在哪里了吗?

<?php

use SlimHttpUploadedFile;

class FileControllerTest extends PHPUnit_Framework_TestCase
{
    // ...

    public function testUserCanCreateAFileSuccessfullyWithStatusCode200()
    {
        // ...

        $uploadedFile = new UploadedFile(
            $directory . '/File_1.txt',
            'File_1.txt',
            'text/plain',
            filesize($directory . '/File_1.txt'),
            0
        );

        $uploadedFiles = array();
        $uploadedFiles["file"] = $uploadedFile;

        // ...

        $request = SlimHttpRequest::createFromEnvironment($environment);
        $request->withUploadedFiles($uploadedFiles);    

        var_dump($request->getUploadedFiles());         // array(0) { }

        // ...
    }
}

推荐答案

因为请求是不可变的,所以在操作它时始终会创建一个新实例...

 $request = $request->withUploadedFiles($uploadedFiles); 

这篇关于SILM 3方法getUploadedFiles()返回空数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:SILM 3方法getUploadedFiles()返回空数组

基础教程推荐