Экспорт с носиком коробки - PullRequest
0 голосов
/ 21 января 2020

Я пытаюсь внедрить Box / Spout в мой проект и хочу экспортировать некоторые данные. Дело в том, что когда я пытался сделать тестовый файл для загрузки, он не работает, это просто простая белая страница и загрузка .xlsx не запускается.

Ниже мой код:

<?php

require_once 'vendor/box/spout/src/Spout/Autoloader/autoload.php';

use Box\Spout\Writer\Common\Creator\WriterEntityFactory;
use Box\Spout\Common\Entity\Row;

function xlsx(){
    $writer = WriterEntityFactory::createXLSXWriter();
    // $writer = WriterEntityFactory::createODSWriter();
    // $writer = WriterEntityFactory::createCSVWriter();
    $writer->setShouldUseInlineStrings(true); // default (and recommended) value

    $writer->setTempFolder($customTempFolderPath);

    $fileName = 'test.xlsx';

    // $writer->openToFile($filePath); // write data to a file or to a PHP stream
    $writer->openToBrowser($fileName); // stream data directly to the browser

    $cells = [
        WriterEntityFactory::createCell('Carl'),
        WriterEntityFactory::createCell('is'),
        WriterEntityFactory::createCell('great!'),
    ];

    /** add a row at a time */
    $singleRow = WriterEntityFactory::createRow($cells);
    $writer->addRow($singleRow);

    /** add multiple rows at a time */
    $multipleRows = [
        WriterEntityFactory::createRow($cells),
        WriterEntityFactory::createRow($cells),
    ];
    $writer->addRows($multipleRows); 

    /** Shortcut: add a row from an array of values */
    $values = ['Carl', 'is', 'great!'];
    $rowFromValues = WriterEntityFactory::createRowFromArray($values);
    $writer->addRow($rowFromValues);

    $writer->close();

}

Это образец взят из официальной документации: https://opensource.box.com/spout/

Есть что-то, что я пропустил? Что я делаю не так?

1 Ответ

0 голосов
/ 22 января 2020

Это выглядит хорошо для меня. Вам просто нужно вызвать функцию xlsx() из вашего индекса. php, чтобы фактически запустить загрузку.

Чтобы проверить, действительно ли она работает, просто переместите содержимое функции xlsx() непосредственно в индекс. PHP; это может помочь отладить вашу проблему

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...