Dịch vụ

Sản phẩm

Tin tức

Tin tức

Hiện tại, website của chúng ta đang dùng project PHP căn bản nên chúng ta sẽ sử dụng hàm, chúng ta không nên sử dụng các kiếm thức về lập trình hướng đối tượng. Vì vậy, tất cả các vấn đề mà chúng ta làm thì chúng ta sẽ đặt theo hàm để chương trình của hệ thống chúng ta chạy tối ưu hơn.

Ở bài viết thư viện xử lý database này, chúng ta sẽ viết tất cả các hàm xử lý về database trong 1 file, và file chúng ta chọn ở đây là libs/database.php

Thư viện xử lý database trong PHP

Hiện tại, chúng ta đang dùng MySQLi Procedural nên các bạn cần biết một số kiến thức về cách sử dụng MySQLi, các kiếm thức này được chia sẽ rất nhiều trên Google, các bạn có thể lên đó để được tư vấn cụ thể nhé.

Vì mục đích của tôi sẽ trình bày các tính chất trong lập trình hướng đối tượng như tính kế thừa, tính trừu tượng ... nên trong bài này chúng ta sẽ xây dựng một mô hình các lớp như sau:

 

 

 

 

Để viết được thư viện xử lý database trong PHP, các bạn hãy bổ sung đoạn code dưới đây vào file demo.php:

Mặt dù ở đoạn code trên tôi có ghi từng ghi chú cho từng phần những có thể một số bạn mới vào nghề sẽ không hiểu nên tôi sẽ giải thích thêm để các bạn được nắm vững:

Với hàm này, chúng ta sẽ khai báo với hệ thống một biến kết nối toàn cục. Mục đích của việc khai báo nào là để cho hệ thống của chúng ta được tối ưu hơn, ngoài ra, các câu truy vấn của chúng ta sau này sẽ dùng chung biến lưu trữ kết nối này.

Hàm connect

Để tránh trường hợp hàm kết nối này bị kết nối nhiều lần do bị gọi quá nhiều lần nên chúng ta sử dụng hàm điều kiện if như trên để hệ thống tiến hành kiểm tra là đã kết nối hay chưa, nếu chưa thì hệ thống mới tiến hành kết nối. Bởi vì nếu lặp quá thiều lần thì chúng ta sẽ dư thừa các câu truy vấn, chương trình sẽ dễ bị tràn bộ nhớ.

Hàm dis_connect

Ở hàm ngắt kết nối này, dòng lệnh if; sẽ gọi ra hàm kết nối và tiến hành kiểm tra với hàm điều kiện if, nếu hệ thống vẫn chưa tiến hành kết nối thì không cần phải thực hiện hàm ngắt kết nối này nữa, nếu đã kết nối thì hệ thống sẽ tự động tiến hành ngắt kết nối.

Hàm lấy danh sách

Hàm lấy danh sách các Record là hàm lấy các record trong cở sở dữ liệu theo một điều kiện nào đó.

Ví dụ: Các bạn lấy danh sách người dùng mới nhất, danh sách 12 người dùng mới nhất hoặc danh sách tin tức trong một chuyên mục nào đấy thì chúng ta sẽ sử dụng hàm này. Lúc này, kết quả sẽ trả về một mảng các phần tử và mỗi phần tử là một mảng kết hợp với bộ sult tương ứng với tên cơ sở dữ liệu của chúng ta.

Hàm lấy 1 row

Hàm lấy 1 row là hàm sẽ trả về một record nào đó, hàm này sẽ được dùng trong trường hợp chúng ta muốn chi tiết về một tin nào đó hoặc chi tiết của một người dùng nào đó.

Ở đây tôi phân ra thành 2 hàm là hàm danh sách và hàm chi tiết vì ở hàm danh sách chúng ta trỏ về một mảng và các phần tử bên trong là một mảng khác nữa, còn đối với hàm chi tiết thì chúng ta chỉ trỏ về đúng 1 record thôi.

Hàm thực thi câu truy vấn Insert

Hàm thực thi câu truy vấn Update

Hàm thực thi câu truy vấn Delete

Toàn File DB_driver.php

 Một số cách sử dụng thư viện

Trước tiên bạn tạo một database tên demo và tạo một table như sau:

Trong file demo.php bạn sẽ thực hiện lần lượt các đoạn code sau và xem trong db sẽ thấy tác dụng của thư viện này 

Đó chính là toàn bộ nội dung của bài viết thư viện xử lý Database của chúng ta, cũng tương đối đơn giản thôi phải không nào.Đối với câu Select thì chúng ta sẽ lấy kết quả và kết quả đó sẽ được trả về dạng mảng. Còn đối với câu truy vấn update, insert, delete thì chúng ta chỉ kiểm tra là các câu truy vấn có có thực hiện được hay không thôi nên chúng ta nên viết một hàm riêng như thế này. Chỉ cần thực hiện return kết quả của câu truy vấn là chúng ta đã biết được là có thực hiện câu truy vấn thành công hay không.