小编Mon*_*arc的帖子

从Symfony 3.1开始,不引用以"%"指示符开头的标量

来自services.yml的所有服务和参数都被删除,我收到消息"不引用以"%"指示符开头的标量,因为Symfony 3.1"已弃用.但我使用Symfony 2.6并且我不想将值放在引号中,因为此版本不需要它.这发生在我更新了PhpStorm 2016.1的Symfony插件之后

我该怎么做才能避免这种情况?(使用PhpStorm 10或使用较旧的插件不是一个选项)

deprecated symfony symfony-plugins phpstorm

6
推荐指数
2
解决办法
3744
查看次数

如何对 Excel 文件中的内容进行断言?

我有一个返回 Excel 文件的操作。在浏览器中访问该路线将自动下载我的 Excel 文件。

我为该操作编写了一个测试,但我只能断言来自标题的数据。此外,测试将响应直接输出到控制台,并带有类似w?m?J?9???9?e??o??.

有没有办法对来自该 Excel 文件输出的数据进行断言?不保存文件,只显示内容作为响应。我正在使用 Symfony2。

编辑

我找到了一种通过将响应保存在输出缓冲区中、将内容保存在 .xlsx 文件中、转换为 .csv 文件并从那里获取内容来读取数据的方法。

    ob_start();
    $this->client->request(
        'GET',
        '/myUrl',
        array(),
        array(),
        array()
    );

    $content = ob_get_clean();

    file_put_contents('MyFile.xlsx', $content);
    $reader = \PHPExcel_IOFactory::createReader('Excel2007');

    $excel = $reader->load('MyFile.xlsx');

    $writer = \PHPExcel_IOFactory::createWriter($excel, 'CSV');
    $writer->save('MyFileCsv.csv');

    $newContent = fgetcsv(fopen("MyFileCsv.csv", "r"));
Run Code Online (Sandbox Code Playgroud)

这里只是一个草图。我停在这里,没有尝试阅读所有内容并进行断言,但我确信可以通过这种方式完成。啊,别忘了之后删除文件。

php excel phpunit assert symfony

5
推荐指数
1
解决办法
1589
查看次数

标签 统计

symfony ×2

assert ×1

deprecated ×1

excel ×1

php ×1

phpstorm ×1

phpunit ×1

symfony-plugins ×1