表題の通り、PhpSpreadsheetの公式ドキュメントのサンプルコードを元にHTMLコンテンツからのExcelファイルの生成し出力し開いてみたのですが、$secondHtmlStringの部分がExcelファイルのどこにも見当たらず、$firstHtmlStringのみ出力されている状態です。私のPHPのバージョンは7.3.28なのですが、これが影響しているのか、それとも記述に不備があるのでしょうか。原因がわからず途方に暮れております。
また、下記の記述は本来なら、別シートに$secondHtmlStringが書き込まれるという認識なのですが合っていますでしょうか。公式ドキュメントを読んでもどうしても判断出来ませんでした。
php
1$firstHtmlString = '<table> 2 <tr> 3 <td>Hello World</td> 4 </tr> 5 </table>'; 6$secondHtmlString = '<table> 7 <tr> 8 <td>Hello World</td> 9 </tr> 10 </table>'; 11 12$reader = new \PhpOffice\PhpSpreadsheet\Reader\Html(); 13$spreadsheet = $reader->loadFromString($firstHtmlString); 14$reader->setSheetIndex(1); 15$spreadhseet = $reader->loadFromString($secondHtmlString, $spreadsheet); 16 17$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xls'); 18header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); 19header('Content-Disposition: '.Util_Upload_Attachment::generate_content_disposition($_SERVER['HTTP_USER_AGENT'], 'write.xls', 'attachment')); 20header('Cache-Control: max-age=0'); 21$writer->save('php://output'); 22
環境
PHP 7.3.2
MacOS 11.2
回答1件
あなたの回答
tips
プレビュー