PhpSpreadsheet生成Excel時實現單元格自動換行


PhpSpreadsheet是PHPExcel的替代版本,PHPExcel的作者已經停止了更新,今天嘗試了使用PhpSpreadsheet生成Excel的時候支持單元格內的自動換行,發現用法其實差不多。

先來看一下Excel單元格中的換行,手工輸入Alt+Enter可以進行換行,實際上是選擇了一個“自動換行”的屬性。

下面來看PhpSpreadsheet代碼

error_reporting(E_ALL);
require_once "./vendor/autoload.php";

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$value = "Hello World!" . PHP_EOL . "Next Line";
$sheet->setCellValue('A1', $value);
$sheet->getStyle('A1')->getAlignment()->setWrapText(true);

$writer = new Xlsx($spreadsheet);
$filename = __DIR__ . "/data/hello_world.xlsx";
$writer->save($filename);

要實現單元格換行,包括兩部分:首先,需要換行的內容之間必需包括換行符,可以用PHP_EOL或者\r\n;其次,必需激活單元格的“自動換行”屬性。了解了這兩點,實現單元格自動換行就非常容易了。

歡迎關注我的微信公眾號

參考資料:
1、PhpSpreadsheet
2、PHPExcel單元格內自動換行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM