Как сделать утверждения на содержание из файла 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"));

Вот только эскиз. Я остановился здесь, не пытался читать весь контент и делать заявления, но я уверен, что это можно сделать таким образом. Ах, не забудьте удалить файлы после.

1 ответ

Вы можете использовать PHPexcel (можно найти здесь: phpexcel), чтобы проанализировать ваши Excel и подтвердить данные, собранные phpexcel.

Другие вопросы по тегам