Giá trị trả về mysqli_connect
❮ Tham chiếu PHP MySQLi Show Ví dụ - Kiểu hướng đối tượngMở một kết nối mới đến máy chủ MySQL $mysqli = new mysqli("localhost","my_user","my_password","my_db"); // Kiểm tra kết nối Nhìn vào ví dụ về phong cách thủ tục ở phía dưới Định nghĩa và cách sử dụngHàm connect() / mysqli_connect() mở một kết nối mới tới máy chủ MySQL cú phápPhong cách hướng đối tượng$mysqli -> mysqli mới (máy chủ, tên người dùng, mật khẩu, dbname, cổng, ổ cắm) phong cách thủ tụcmysqli_connect(máy chủ, tên người dùng, mật khẩu, dbname, cổng, ổ cắm) Giá trị tham sốTham sốMô tảhostTùy chọn. Chỉ định tên máy chủ hoặc địa chỉ IPtên người dùngTùy chọn. Chỉ định tên người dùng MySQLmật khẩuTùy chọn. Chỉ định mật khẩu MySQLdbnameOptional. Chỉ định cơ sở dữ liệu mặc định được sử dụngportOptional. Chỉ định số cổng để cố gắng kết nối với ổ cắm máy chủ MySQLTùy chọn. Chỉ định ổ cắm hoặc đường ống được đặt tên sẽ được sử dụngchi tiết kỹ thuậtGiá trị trả về. Trả về một đối tượng đại diện cho kết nối đến máy chủ MySQLPhiên bản PHP. 5+Ví dụ - Kiểu thủ tụcMở một kết nối mới đến máy chủ MySQL $con = mysqli_connect("localhost","my_user","my_password","my_db"); // Kiểm tra kết nối ❮ Tham chiếu PHP MySQLi Tôi chắc chắn sẽ không đề xuất mẫu đơn trong trường hợp này và thực tế, trong trường hợp chung, vì nó gây khó khăn cho việc kiểm tra và mở rộng trong nhiều trường hợp và không thể được sử dụng để xử lý nhiều kết nối cùng một lúc, điều này có thể cần thiết tại một số trường hợp Mẫu đơn chỉ giúp dễ dàng "toàn cầu hóa" kết nối giữa các ứng dụng của bạn và chắc chắn đã trở nên nổi tiếng bởi vì vào thời điểm đó, có nhiều ứng dụng php được viết kém sẽ bắt đầu mọi tập lệnh bằng một kết nối mới dẫn đến nhiều kết nối trùng lặp được mở. Nhưng trên thực tế, điều này thậm chí sẽ được giải quyết tốt hơn bằng cách sử dụng toàn cầu trực tiếp trên đối tượng khi cần thiết hơn là với một singleton. Tất nhiên, tốt nhất là triển khai một số loại tiêm phụ thuộc hoặc mẫu đăng ký để làm như vậy, nhưng tôi nghĩ mẫu singleton nói chung và thậm chí còn hơn thế nữa khi xử lý db nói riêng Và bạn thậm chí không cần triển khai trình xử lý db của riêng mình hoặc thậm chí sử dụng bất kỳ trình xử lý nào của nhà cung cấp, giống như đã được thực hiện trong ví dụ Doktor OSwaldo, bạn có mọi thứ bạn cần ngay từ PDO
Bạn có thể bọc cái này thành một hàm/phương thức để thao tác kết nối trước khi trả lại hoặc thậm chí triển khai một kho lưu trữ kết nối tối giản
Điều này sẽ mang lại sự dễ sử dụng và đảm bảo chống lại các kết nối trùng lặp giống như một singleton, nhưng vẫn cho phép bạn sử dụng nhiều kết nối cùng một lúc
Tất nhiên, tốt hơn hết bạn nên lưu trữ các tùy chọn kết nối trong một số loại cấu hình (ví dụ: tìm nạp nó lần đầu tiên getConnection được gọi). Và ví dụ này vẫn không thể kiểm tra một cách lý tưởng (chỉ có điều sự đơn giản của nó khiến nó dễ bị chế giễu), nhưng nó có thể đủ gần như trong nhiều trường hợp
my_personal_contacts my_person_contacts TẠO BẢNG NẾU KHÔNG TỒN TẠI `my_contacts` ( `id` int(11) KHÔNG NULL AUTO_INCREMENT, `full_names` varchar(255) KHÔNG NULL, `giới tính` varchar(6) KHÔNG NULL, `contact_no` varchar(75) KHÔNG NULL, `email` varchar(255) KHÔNG NULL, `city` varchar(255) KHÔNG NULL, `quốc gia` varchar(255) KHÔNG NULL, ) ENGINE = InnoDB DEFAULT CHARSET = latin1 AUTO_INCREMENT = 5 ; CHÈN VÀO `my_contacts` ( (1, 'Zeus', 'Nam', '111', 'zeus@olympus. tấn. co', 'Agos', 'Hy Lạp'), (2, 'Athena', 'Nữ', '123', 'athena@olympus. tấn. co', 'Athens', 'Hy Lạp'), (3, 'Jupiter', 'Nam', '783', 'jupiter@planet. điểm. co', 'Rome', 'Ý'), (4, 'Venus', 'Female', '987', 'venu @planet. điểm. co', 'Mars', 'Ý'); |