Slim 3 method getUploadedFiles() returns an empty array(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()返回空数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!