Коробка / носик вопросы

Я впервые использую библиотеку Box / Spout. Я использую сервер WAMP.
Мой вопрос заключается в следующем:

require_once('./spout-master/src/Spout/Autoloader/autoload.php');

use Box\Spout\Writer\WriterFactory;
use Box\Spout\Common\Type;

$filePath = 'test.xlsx';
$writer = WriterFactory::create(Type::XLSX);
$writer->openToFile($filePath);

[X]

$writer->addRow(['a'], $style);
$writer->close();

(1)
Когда я запускаю код выше, я получаю следующее сообщение об ошибке:

Warning: rmdir(C:\WINDOWS\TEMP/xlsx560f58d588ceb): Permission denied in
C:\wamp\www\1300.revenue.com.my\public_html\spoutmaster\src\Spout\Common\Helper\FileSystemHelper.php on line 113

Что означает ошибка, и как мне ее изменить, чтобы появилось это сообщение об ошибке?

(2) Я хочу получить ожидаемый результат, как показано ниже:

введите описание изображения здесь

Но я не знал, как написать это на [X] части. Как написать это, чтобы получить ожидаемый результат?

1

Решение

Похоже, временная папка по умолчанию, используемая для создания файла XLSX, не может быть удалена. Вы можете проверить это, проверив разрешения на C:\WINDOWS\TEMP/xlsx560f58d588ceb,

Чтобы решить эту проблему, вы можете вручную исправить разрешения для временной папки (C:\WINDOWS\TEMP) или используйте другую временную папку, как указано здесь: https://github.com/box/spout#using-custom-temporary-folder

Что касается 2), нет простого способа сделать это с носиком. Носик не поддерживает слияние клеток. Единственное, что вы можете сделать, это:

| 1 | 2 |   | 3 |   |
|---|---|---|---|---|
|   | A | B | A | B |
|---|---|---|---|---|

Или в качестве альтернативы (если это имеет больше смысла):

| 1 | 2 | 2 | 3 | 3 |
|---|---|---|---|---|
| 1 | A | B | A | B |
|---|---|---|---|---|

В любом случае вам придется отформатировать строки, как показано выше: [[1,2,'',3',''], ['', 'A','B','A','B']] или же [[1,2,2,3,3], [1, 'A','B','A','B']]

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]