สวัสดีจ้าเพื่อน ๆ มีใครกำลังมองหาวิธีการเขียนโค้ด PHP เพื่อส่งออกข้อมูลออกมาเป็นไฟล์ .xlxs หรือที่มักจะเรียกกันว่า Export to excel โดยใช้ Library ที่มีชื่อว่า PHPExcel แลแะ PhpSpreadsheet ซึ่งเป็น Library ที่รองรับภาษาไทยด้วยนะ วิธีการส่งออกไฟล์ .xlxs จากฐานข้อมูล Database จะต้องทำอย่างไร เรามีตัวอย่างโค้ด และ วิธีการใช้งานมาให้เพื่อน ๆ ดูกันที่นี่เลยจ้า
ตัวอย่าง วิธีการส่งออกข้อมูล Export to excel จากฐานข้อมูล Database ด้วย PHPExcel
ก่อนอื่นต้องทำการ Download Lribary PHPExcel มาติดตั้งไว้ในโปรเจคของเราก่อน คลิกที่นี่ เพื่อ Download ส่วนวิธีการเรียกใช้งานก็เรียกแบบนี้
require_once 'PHPExcel/Classes/PHPExcel.php';
ส่วนตัวอย่างโค้ดเต็ม ๆ ก็จะเขียนประมาณนี้
// Connect to MySQL database $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database"; $conn = mysqli_connect($servername, $username, $password, $dbname); if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } // Query the database $sql = "SELECT id, name, email FROM users"; $result = mysqli_query($conn, $sql); require_once 'PHPExcel/Classes/PHPExcel.php'; $spreadsheet = new PHPExcel(); // Set the column headers $sheet = $spreadsheet->createSheet(); $sheet->setTitle('User data'); $sheet->setCellValue('A1', 'ID'); $sheet->setCellValue('B1', 'Name'); $sheet->setCellValue('C1', 'Email'); // Fill in the data to the sheet $row = 2; while ($row_data = mysqli_fetch_array($result)) { $sheet->setCellValue('A' . $row, $row_data['id']); $sheet->setCellValue('B' . $row, $row_data['name']); $sheet->setCellValue('C' . $row, $row_data['email']); $row++; } $writer = PHPExcel_IOFactory::createWriter($spreadsheet, 'Excel2007'); $writer->save('export_database.xlsx'); // Close the MySQL connection mysqli_close($conn);
ตัวอย่าง วิธีการส่งออกข้อมูล Export to excel จากฐานข้อมูล Database ด้วย PhpSpreadsheet
ก่อนอื่นต้องทำการ Download Lribary PhpSpreadsheet มาติดตั้งไว้ในโปรเจคของเราก่อน คลิกที่นี่ เพื่อ Download หรือติดตั้งผ่าน Composer ด้วยคำสั่งนี้
composer require phpoffice/phpspreadsheet
จากนั้นก็ Config ค่าในไฟล์ composer.json ตามด้านล่างนี้
{ "require": { "phpoffice/phpspreadsheet": "^1.23" }, "config": { "platform": { "php": "7.4" } } }
วิธีการเรียกใช้งานก็เรียกโดยการเรียก Vendor/autoload แบบนี้
// Connect to MySQL database
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
// Query the database
$sql = "SELECT id, name, email FROM users";
$result = mysqli_query($conn, $sql);
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
// Set the column headers
$sheet = $spreadsheet->createSheet();
$sheet->setTitle('User data');
$sheet->setCellValue('A1', 'ID');
$sheet->setCellValue('B1', 'Name');
$sheet->setCellValue('C1', 'Email');
// Fill in the data to the sheet
$row = 2;
while ($row_data = mysqli_fetch_array($result)) {
$sheet->setCellValue('A' . $row, $row_data['id']);
$sheet->setCellValue('B' . $row, $row_data['name']);
$sheet->setCellValue('C' . $row, $row_data['email']);
$row++;
}
$writer = new Xlsx($spreadsheet);
$writer->save('export_database.xlsx');
// Close the MySQL connection
mysqli_close($conn);
บทความอื่น ๆ ที่เกี่ยวข้องกับ PHP
เป็นยังไงกันบ้างคะ สำหรับบทความเรื่อง PHP export to excel จากฐานข้อมูล database ดูเพลินก็หวังว่าบทความของเราจะเป็นประโยชน์ต่อท่านไม่มากก็น้อย นอกจากนี้ เรายังมีบทความดี ๆ อีกมากมาย คุณสามารถลองคลิกเขาไปอ่านบทความอื่น ๆ ตามลิงค์ด้านล่างได้เลย