Import Dữ Liệu Từ CSV Tới MySQL Bằng PHP - VinaSupport
Có thể bạn quan tâm
Làm thế nào để import dữ liệu từ 1 file CSV tới MySQL? Đoạn code PHP sau đây sẽ thực hiện việc import dữ liệu từ file CSV tới MySQL. Nó sẽ thực hiện theo các bước như sau:
- Đọc các tham số truyền vào
- Tạo bảng CSDL
- Đọc file CSV và import dữ liệu từ file CSV tới MySQL

Import dữ liệu từ CSV tới MySQL bằng lệnh SQL
Việc import dữ liệu từ CSV tới MySQL chúng ta sử dụng lệnh sql là LOAD DATA của MySQL
LOAD DATA INFILE "/home/vinasupport/file.csv" INTO TABLE <table_name> COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"' LINES TERMINATED BY '\n' IGNORE 1 LINES;Với <table_name> là bảng CSDL mà bạn muốn import.
Import dữ liệu từ CSV tới MySQL bằng PHP
Tạo 1 file php là: import-csv.php có nội dung như sau:
<?php error_reporting(E_ALL); $host = 'localhost'; $user = 'root'; $pass = ''; $database = 'vinasupport'; $delimiter = ';'; // By default , $db = mysqli_connect($host, $user, $pass,$database); if (!$db) { echo "Error: Unable to connect to MySQL." . PHP_EOL; echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL; echo "Debugging error: " . mysqli_connect_error() . PHP_EOL; exit; } /********************************************************************************/ // Parameters: filename.csv table_name $argv = $_SERVER['argv']; if($argv[1]) { $file = $argv[1]; } else { echo "Please provide a file name\n"; exit; } if($argv[2]) { $table = $argv[2]; } else { $table = pathinfo($file); $table = $table['filename']; } /********************************************************************************/ // Get the first row to create the column headings $fp = fopen($file, 'r'); $frow = fgetcsv($fp,0,$delimiter); $columns = ''; foreach($frow as $column) { if($columns) $columns .= ', '; $columns .= "`$column` varchar(191)"; // Max varchar for utf8mb4!! } $create = "create table if not exists $table ($columns);"; //Debug echo $create."\n"; mysqli_query($db,$create); /********************************************************************************/ // Import the data into the newly created table. $file = $_SERVER['PWD'].DIRECTORY_SEPARATOR.$file; $q = "load data local infile '$file' into table $table fields terminated by '$delimiter' ignore 1 lines"; //Debug echo $q."\n"; mysqli_query($db,$q);Để chạy đoạn code trên chúng ta sử dụng command sau:
php import-csv.php <path_of_csv_file> <table_name>Nguồn: vinasupport.com
Từ khóa » Ghi File Csv Trong Php
-
Tạo Tệp CSV Cho Người Dùng Bằng PHP - HelpEx
-
Đọc Tệp .csv Trong Php - HelpEx
-
Xuất File CSV Trong PHP đối Với Dữ Liệu Tiếng Nhật
-
Hàm Fputcsv() Trong PHP - Code Từ Tâm
-
PHP - Lấy Thông Tin Từ CSV File Chuẩn Nhất - Seth Phát Blog
-
Đọc Và Ghi Tệp CSV Trong PHP - Ghi Tệp Csv Php
-
Xuất Data Từ MySql Ra File CSV Trong PHP - NHANWEB
-
Bài 16: Các Hàm Xử Lý Và Làm Việc Với File Trong PHP
-
LaraCSV Tạo File CSV Từ Eloquent Model - All Laravel
-
Cách đọc File CSV Bằng PHP
-
Ví Dụ Về File_exists, Fopen, Fwrite, Fclose, Fgets, Copy, Unlink Trong ...
-
Bài 12: Thao Tác Với FILE Trong PHP - Góc Làm Web
-
Làm Việc Với File Trong PHP
-
Cách Sử Dụng Hàm Readfile() Và Fopens() Trong PHP - Thiết Kế Web