Php nhập csv lớn vào mysql
Bài viết này sẽ chỉ cho bạn cách nhập một số lượng lớn bản ghi từ tệp CSV vào Ứng dụng Laravel bằng trình tạo cơ sở dữ liệu Show
Khi chúng tôi có hàng nghìn hoặc hàng triệu bản ghi hoặc tệp CSV mà chúng tôi muốn lưu trữ trong cơ sở dữ liệu của mình, chúng tôi thường sử dụng các công việc định kỳ hoặc hàng đợi. Chúng tôi có thể sử dụng trình tạo cơ sở dữ liệu để nhập bản ghi nếu chúng tôi chỉ muốn nhập tệp CSV một lần Vì tệp lớn và ứng dụng không thể xử lý nhiều yêu cầu cùng một lúc nên nó sẽ hiển thị thời gian thực hiện tối đa khi chúng tôi sử dụng chức năng nhập để lưu trữ lượng lớn dữ liệu. Vì vậy, chúng tôi đã thêm một mã ví dụ tuyệt vời để chèn tệp CSV lớn vào cơ sở dữ liệu bằng ứng dụng laravel chỉ trong vài phút hoặc vài giây Bước 1. Cài đặt ứng dụng LaravelCài đặt một ứng dụng laravel mới, vì vậy hãy vào terminal, gõ lệnh và tạo một ứng dụng laravel mới
hoặc, nếu bạn đã cài đặt Trình cài đặt Laravel dưới dạng phần phụ thuộc của nhà soạn nhạc toàn cầu
Bước 2. Cấu hình chi tiết cơ sở dữ liệuNhập thông tin đăng nhập cơ sở dữ liệu của bạn, bao gồm tên cơ sở dữ liệu, tên người dùng và mật khẩu, sau khi mở tệp 2
Bước 3. Tạo Migration và ModelBước tiếp theo là sử dụng thiết bị đầu cuối để chạy lệnh sau để tạo mô hình và tệp di chuyển
thêm đoạn mã sau vào tệp di chuyển
Mở dấu nhắc lệnh và nhập lệnh sau để tạo bảng trong cơ sở dữ liệu
Thêm đoạn mã sau vào 3____14 tập tin 0Bước 5. Chạy Database SeederChạy lệnh sau để chạy Database seeder 1Nhập các tệp CSV lớn trong MySQL bằng Laravel và maatwebsite/Laravel-ExcelNếu bạn đang sử dụng Laravel Excel, bạn có thể sử dụng tính năng chunking. Sử dụng đoạn mã sau để nhập khối vào cơ sở dữ liệu qua Chunk Reading 0Nếu bạn đang sử dụng lớp Nhập trong Ứng dụng Laravel của mình thông qua Laravel Excel thì bạn có thể sử dụng các phương pháp sau để nhập dữ liệu vào cơ sở dữ liệu 1Cảm ơn bạn đã đọc bài viết này đọc thêm. Laravel 9 Nhập Xuất Ví dụ Tệp Excel & CSV Nếu bạn muốn quản lý Máy chủ VPS / VM của mình mà không cần chạm vào dòng lệnh, hãy xem liên kết này. ServerAvatar cho phép bạn thiết lập nhanh các trang web WordPress hoặc PHP tùy chỉnh trên VPS / VM chỉ trong vài phút. Bạn có thể lưu trữ nhiều trang web trên một VPS / VM, định cấu hình chứng chỉ SSL và theo dõi tình trạng của máy chủ mà không cần chạm vào giao diện dòng lệnh PHP được sử dụng rộng rãi để xây dựng nhiều loại sản phẩm khác nhau, từ ứng dụng web đến ứng dụng cấp doanh nghiệp. Chìa khóa để mã PHP hiệu quả là tuân theo quy trình công việc phù hợp và tự động hóa các quy trình. Kết quả là mã chất lượng cao và không có lỗi Trong hầu hết các ứng dụng PHP, dữ liệu được lưu trữ, truy cập và trao đổi giữa các thành phần khác nhau của ứng dụng. Để đảm bảo rằng việc trao đổi và truy cập dữ liệu này diễn ra suôn sẻ và không có bất kỳ sự cố nào, nhóm phát triển phải đảm bảo rằng cơ sở dữ liệu và kết xuất dữ liệu ở định dạng phù hợp Nhập và xuất dữ liệu đến và từ cơ sở dữ liệu là một quy trình đủ phổ biến trong quá trình phát triển PHP. Một hoạt động quan trọng khác là sao lưu và truyền cơ sở dữ liệu Trong bài viết này, tôi sẽ giải thích cách lưu bảng từ tệp CSV sang MySQL và ngược lại. Bạn cần đăng ký tại Cloudways để khởi chạy máy chủ và ứng dụng ngăn xếp PHP. Trước khi đăng ký, hãy xem xét tất cả các tùy chọn giá từ các nhà cung cấp dịch vụ lưu trữ đẳng cấp thế giới như AWS, DigitalOcean, Linode, Vultr và GCP để bạn có thể tìm thấy tùy chọn hoàn toàn phù hợp với nhu cầu của mình Lưu trữ PHP. PHP7 và PHP5 tốt nhất. 6 Lưu trữ web Tạo cơ sở dữ liệu trong MySQLBước đầu tiên trong hướng dẫn này là tạo cơ sở dữ liệu MySQL. Vì Cloudways cung cấp trình quản lý mysql tùy chỉnh trong nền tảng chứa cơ sở dữ liệu cho ứng dụng. bạn có thể tạo bảng bằng cách chạy truy vấn SQL. Tạo bảng `employeeinfo` trong cơ sở dữ liệu bằng truy vấn SQL sau 4Thao tác này sẽ tạo một bảng mới `employeeinfo` trong cơ sở dữ liệu. Tôi sẽ sử dụng bảng này để chèn dữ liệu từ tệp CSV Ngừng lãng phí thời gian trên máy chủCloudways xử lý việc quản lý máy chủ cho bạn để bạn có thể tập trung vào việc tạo các ứng dụng tuyệt vời và giữ cho khách hàng của mình hài lòng Tạo kết nối MySql trong PHPĐể nhập và xuất cơ sở dữ liệu trong MySql sẽ tạo một tệp riêng `config. php`. Thêm mã sau và thay thế thông tin đăng nhập cơ sở dữ liệu bằng mã của bạn. Bạn có thể tìm thông tin đăng nhập db của mình trong chi tiết Truy cập ứng dụng 5Có liên quan. Cách kết nối cơ sở dữ liệu MySQL với các trang web PHP Nhập CSV vào MySQL bằng PHPSau khi cơ sở dữ liệu đã được tạo, tiếp theo tôi cần một tệp HTML có thể tải tệp CSV lên. Đối với tệp HTML này, tôi sẽ sử dụng Trình tải lên tệp HTML ở dạng bootstrap đơn giản Tạo một tệp và đặt tên là `index. php`. Đây là một hình thức đơn giản để tải lên tệp CSV. Tệp này cũng sẽ hiển thị kết quả trong một bảng đơn giản trên cùng một trang. Khi người dùng gửi biểu mẫu, tất cả các bản ghi sẽ được lưu trong cơ sở dữ liệu Đầu tiên, tôi sẽ thêm Bootstrap CDN vào chỉ mục. php 6Tiếp theo, trong thẻ `body`, hãy thêm mã HTML sau cho biểu mẫu Bootstrap 7Bạn có thể nhận thấy rằng tôi đã đặt một hành động thành `functions. tập tin php`. Trong bước tiếp theo, tôi sẽ tạo tệp này và thêm mã vào nó. Tôi cũng đã bao gồm một phương thức `get_all_records()` ở gần cuối tệp. Phương thức này lấy tất cả các bản ghi từ cơ sở dữ liệu và hiển thị các bản ghi trong bảng trên trang chỉ mục Tiếp theo, tôi sẽ tạo `hàm. php` và thêm đoạn mã sau vào đó 8Khi nhấp vào nút tải lên, tên tệp tạm thời sẽ được lưu trong bộ nhớ và sử dụng vòng lặp `while`, dữ liệu được lưu trong biến $getData. Sau khi quá trình hoàn tất, dữ liệu được sắp xếp theo cột một cách khôn ngoan và cuối cùng được chèn vào bảng `employeeinfo` Lưu ý rằng `fgetcsv()` phân tích cú pháp các dòng từ tệp đang mở, kiểm tra các trường CSV và `fopen()` sẽ mở một tệp hoặc một URL. Có thể kiểm tra mã này bằng cách nhập tệp CSV có dữ liệu kiểm tra Hiển thị các bản ghi đã lưuKhi tệp CSV đã được nhập, tôi sẽ hiển thị dữ liệu thông qua một chức năng đơn giản, `get_all_records()`, được khởi tạo trong `index. php`. Sao chép hàm này vào `function. php` 9Trong phương pháp thực sự đơn giản này, tôi chỉ cần chọn tất cả các bản ghi và hiển thị các bản ghi này trên trang chỉ mục thông qua phương thức. Bất cứ khi nào người dùng tải lên tệp CSV, các bản ghi sẽ được lưu trong bảng và sau đó được hiển thị trên trang chỉ mục Xuất MySQL sang CSV bằng PHPXuất dữ liệu từ cơ sở dữ liệu MySQL sang tệp CSV cũng rất dễ dàng. Để chứng minh điều này, tôi sẽ sử dụng chỉ số. php mà tôi đã tạo trước đó Thêm đoạn mã sau vào tập tin 0Sau khi thêm phần đánh dấu HTML này, nút Xuất sẽ xuất hiện bên dưới bảng. Bây giờ thêm điều kiện sau vào hàm. php 1Khi nhấp vào nút `Xuất`, các tiêu đề `Loại nội dung. văn bản/csv` có tệp đính kèm `dữ liệu. csv` được gửi Vì `php. //output` là luồng chỉ ghi cho phép ghi quyền truy cập vào cơ chế bộ đệm đầu ra, tôi đã chọn tất cả dữ liệu từ bảng ở dòng tiếp theo và chuyển nó sang phương thức `fputcsv()` . Phương thức này định dạng một dòng (được truyền dưới dạng một mảng trường) dưới dạng CSV và ghi nó (được kết thúc bởi một dòng mới) vào tệp đã chỉ định. Cuối cùng, tệp có tất cả dữ liệu mong muốn được tải xuống Cuối cùng, sau khi tích hợp tất cả mã, bạn sẽ thấy hình dạng ứng dụng cuối cùng sau đây Bạn cũng có thể thích. CRUD đơn giản trong PHP và MySQL Phần kết luậnTrong bài viết này, tôi đã thảo luận về cách bạn có thể xuất dữ liệu từ và sang tệp CSV bằng PHP và MySQL. Đây là một ví dụ đơn giản, bạn có thể Thêm logic và xác thực phức tạp hơn theo yêu cầu của mình. Bạn cũng có thể tạo các trường hợp thử nghiệm để xác minh mã và Tích hợp với GitHub bằng Công cụ tích hợp liên tục PHP. Nếu bạn muốn thêm vào cuộc thảo luận hoặc muốn đặt câu hỏi, hãy để lại nhận xét bên dưới Làm cách nào để nhập tệp CSV lớn vào MySQL?Nhập CSV vào MySQL bằng Workbench . Mở trình hướng dẫn Nhập trong bàn làm việc của MySQL. Để mở trình hướng dẫn Nhập, hãy chú ý đến bảng điều hướng thường ở phía bên trái của bàn làm việc MySQL. . Lựa chọn nguồn dữ liệu. . Chọn/tạo bảng. . Điền vào cài đặt nâng cao Làm cách nào để chèn tệp php CSV dữ liệu lớn vào cơ sở dữ liệu?Cú pháp với Step by Step. . Tạo kết nối tới cơ sở dữ liệu.
Lấy tệp CSV bằng chức năng fopen. Nó được sử dụng để mở một tập tin. fopen(tên tệp, chế độ, đường dẫn bao gồm, ngữ cảnh) Tại đây. . Nhận tệp CSV. Chúng tôi có thể lấy tệp CSV bằng hàm fgetcsv() truy vấn cơ sở dữ liệu Làm cách nào để nhập tệp CSV vào cơ sở dữ liệu MySQL bằng php?Ví dụ nhanh
. $mysqli = new mysqli("localhost", "root", "", "csv-to-mysql"); $csvFilePath = "import-template. csv"; $file = fopen($csvFilePath, "r"); while (($row = fgetcsv($file)). == |