PHP PDO là lớp truy cập cơ sở dữ liệu cung cấp giao diện thống nhất để làm việc với nhiều cơ sở dữ liệu Show
PDO đơn giản hóa các hoạt động cơ sở dữ liệu phổ biến bao gồm
PDO cho phép bạn làm việc với bất kỳ cơ sở dữ liệu nào có sẵn trình điều khiển PDO. PDO dựa trên các trình điều khiển dành riêng cho cơ sở dữ liệu, e. g. , PDO_MYSQL cho MySQL, PDO_PGSQL cho PostgreSQL, PDO_OCI cho cơ sở dữ liệu Oracle, v.v. , để hoạt động đúng. Đây là danh sách đầy đủ các trình điều khiển PDO Do đó, để sử dụng PDO cho một cơ sở dữ liệu cụ thể, bạn cần có sẵn trình điều khiển cơ sở dữ liệu tương ứng Sơ đồ sau đây minh họa cách thức hoạt động của PDO PDO giúp dễ dàng triển khai các ứng dụng PHP vì nó không yêu cầu bạn phải đưa bất kỳ tệp script nào vào ứng dụng của mình theo cách thủ công như các thư viện khác Phần 1. Bắt đầu nhanh PDOPhần này chỉ cho bạn từng bước cách kết nối với một số hệ thống quản lý cơ sở dữ liệu quan hệ, bao gồm MySQL và PostgreSQL
Phần 2. Tạo cơ sở dữ liệu mẫu
Phần 3. báo cáo chuẩn bị
phần 4. CRUD trong PDOPhần này minh họa thao tác cơ sở dữ liệu phổ biến, bao gồm tạo (chèn), đọc (chọn), cập nhật và xóa dữ liệu bằng PDO. Các hoạt động cơ bản này thường được gọi là CRUD
Phần 5. Đang tìm nạp dữ liệuPhần này thảo luận chi tiết về các phương thức và chế độ tìm nạp* khác nhau
Phần 6. Gọi thủ tục lưu trữPhần này cho bạn thấy một số ví dụ về xử lý các thủ tục được lưu trữ, bao gồm
Phần 6. Quản lý giao dịch trong PDOPDO cung cấp cho bạn một số phương thức tiện dụng, bao gồm query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;9, $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";0 và $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";1 để xử lý các giao dịch một cách hiệu quả. Phần này cung cấp cho bạn một số ví dụ về xử lý các giao dịch trong ứng dụng web của bạn Đối tượng dữ liệu PHP (PDO) xác định giao diện nhẹ để truy cập cơ sở dữ liệu trong PHP. Nó cung cấp một lớp trừu tượng truy cập dữ liệu để làm việc với cơ sở dữ liệu trong PHP. Nó xác định API nhất quán để làm việc với các hệ thống cơ sở dữ liệu khác nhau Các lớp PDO PHP$dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";3 đại diện cho kết nối giữa PHP và máy chủ cơ sở dữ liệu. $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";4 đại diện cho một câu lệnh đã chuẩn bị và sau khi câu lệnh được thực thi, một tập hợp kết quả được liên kết. $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";5 đại diện cho lỗi do PDO đưa ra Trong hướng dẫn này, chúng tôi làm việc với cơ sở dữ liệu MySQL DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000); Các lệnh SQL này tạo một bảng $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";6 Truy vấn PHP PDOPDO $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";7 thực thi một câu lệnh SQL trong một lệnh gọi hàm duy nhất, trả về tập kết quả (nếu có) được trả về bởi câu lệnh query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL; Ví dụ trả về phiên bản MySQL $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user"; Các biến này được sử dụng để tạo chuỗi kết nối đến cơ sở dữ liệu. $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";8 là Tên nguồn dữ liệu, chứa thông tin cần thiết để kết nối với cơ sở dữ liệu $pdo = new PDO($dsn, $user, $passwd); Một đối tượng $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";3 mới được tạo. Chúng tôi chuyển cho hàm tạo tên nguồn dữ liệu, tên người dùng và mật khẩu. Lớp $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";3 đại diện cho kết nối giữa PHP và máy chủ cơ sở dữ liệuQuảng cáo $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";2 Phương thức $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";7 thực thi một câu lệnh SQL trong một lần gọi hàm. Nó trả về tập kết quả $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";4 Phương thức $pdo = new PDO($dsn, $user, $passwd);2 của câu lệnh PDO tìm nạp hàng tiếp theo từ một tập hợp kết quả. Trong trường hợp của chúng tôi, nó là một phiên bản của MySQL $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";6 $pdo = new PDO($dsn, $user, $passwd);3 là một mảng; $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";8 Đây là đầu ra PDO $pdo = new PDO($dsn, $user, $passwd);4 thực thi một câu lệnh SQL và trả về số hàng bị ảnh hưởng $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";0 Ví dụ mã xóa ba hàng. Nó in số lượng hàng bị ảnh hưởng DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);0 Trong câu lệnh SQL này, chúng tôi xóa các hàng có id 1, 2 và 3. Số hàng đã xóa được lưu trữ trong biến $pdo = new PDO($dsn, $user, $passwd);5 DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);1 Chúng tôi in số hàng đã xóa Kiểu tìm nạp PHP PDOTham số kiểu tìm nạp kiểm soát cách hàng tiếp theo sẽ được trả lại cho người gọi. Chẳng hạn, $pdo = new PDO($dsn, $user, $passwd);6 trả về một mảng được lập chỉ mục theo tên cột, $pdo = new PDO($dsn, $user, $passwd);7 trả về một mảng được lập chỉ mục theo số cột và $pdo = new PDO($dsn, $user, $passwd);8 trả về một mảng được lập chỉ mục theo cả tên cột và số cột được lập chỉ mục. Kiểu tìm nạp mặc định là $pdo = new PDO($dsn, $user, $passwd);8 DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);2 Trong ví dụ mã này, chúng tôi lấy dữ liệu trong một mảng được lập chỉ mục DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);3 Chúng tôi chọn tất cả dữ liệu từ bảng $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";6 DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);4 Chúng tôi chuyển kiểu $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";21 cho phương thức $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";22 DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);5 Chúng tôi đi qua mảng $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";23 và in các trường. Các trường được truy cập thông qua các chỉ mục mảngQuảng cáo DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);6 Trong ví dụ này, chúng tôi tìm nạp dữ liệu dưới dạng một mảng kết hợp DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);7 Trong phương pháp $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";22, chúng tôi sử dụng kiểu $pdo = new PDO($dsn, $user, $passwd);6 Liên kết tham số PHP PDOCác câu lệnh SQL thường được xây dựng động. Người dùng cung cấp một số đầu vào và đầu vào này được tích hợp vào câu lệnh. Chúng ta phải thận trọng mỗi khi xử lý thông tin đầu vào từ người dùng. Nó có một số ý nghĩa bảo mật nghiêm trọng. Cách được khuyến nghị để xây dựng động các câu lệnh SQL là sử dụng liên kết tham số PDO chứa phương thức $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";26 và $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";27 để tạo các truy vấn được tham số hóa PDO cho phép liên kết dữ liệu với dấu chấm hỏi hoặc trình giữ chỗ được đặt tên DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);8 Trong ví dụ này, chúng tôi sử dụng $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";27 để tạo truy vấn được tham số hóa. Chúng tôi sử dụng trình giữ chỗ dấu chấm hỏi DROP TABLE IF EXISTS countries; CREATE TABLE countries(id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), population INT); INSERT INTO countries(name, population) VALUES('China', 1382050000); INSERT INTO countries(name, population) VALUES('India', 1313210000); INSERT INTO countries(name, population) VALUES('USA', 324666000); INSERT INTO countries(name, population) VALUES('Indonesia', 260581000); INSERT INTO countries(name, population) VALUES('Brazil', 207221000); INSERT INTO countries(name, population) VALUES('Pakistan', 196626000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Bangladesh', 162099000); INSERT INTO countries(name, population) VALUES('Nigeria', 186988000); INSERT INTO countries(name, population) VALUES('Russia', 146838000); INSERT INTO countries(name, population) VALUES('Japan', 126830000);9 Giả sử đầu vào này đến từ một người dùng query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;0 Câu lệnh select tìm nạp một hàng cụ thể từ bảng. Chúng tôi liên kết giá trị với $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";27 với một trình giữ chỗ có dấu chấm hỏi Trong trường hợp thứ hai, chúng tôi sử dụng $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";26 query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;1 Ví dụ chọn và in một hàng cụ thể query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;2 Lần này chúng tôi sử dụng trình giữ chỗ có tên (______141) và $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";26 PHP PDO Id hàng được chèn lần cuốiPhương thức PDO $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";43 trả về id hàng được chèn cuối cùngQuảng cáo query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;3 Trong ví dụ này, chúng tôi tạo một bảng mới. Sau khi bảng được tạo, chúng tôi tìm ra Id được chèn cuối cùng với $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";43 query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;4 Đây là đầu ra query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;5 Chúng tôi xác minh dữ liệu Giao dịch là một đơn vị nguyên tử của hoạt động cơ sở dữ liệu đối với dữ liệu trong một hoặc nhiều cơ sở dữ liệu. Tác động của tất cả các câu lệnh SQL trong một giao dịch có thể được cam kết hoàn toàn với cơ sở dữ liệu hoặc tất cả được khôi phục PDO $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";45 bắt đầu một giao dịch mới. PDO $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";46 cam kết giao dịch. Và PDO $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";47 khôi phục giao dịchQuảng cáo query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;6 Trong ví dụ này, chúng tôi thêm hai quốc gia mới vào bảng cơ sở dữ liệu. Các câu lệnh chèn được đặt trong một giao dịch. cả hai phần chèn đều được thực thi hoặc không query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;7 Trong trường hợp có ngoại lệ, chúng tôi sẽ khôi phục giao dịch trở lại. không có dữ liệu được ghi vào cơ sở dữ liệu. Chúng tôi ném ngoại lệ để việc xử lý ngoại lệ tiếp tục theo cách thông thường PHP PDO nhận siêu dữ liệuSiêu dữ liệu là thông tin về dữ liệu trong cơ sở dữ liệu. Siêu dữ liệu chứa thông tin về các bảng và cột mà chúng tôi lưu trữ dữ liệu trong đó. Số hàng mà câu lệnh SQL ảnh hưởng là siêu dữ liệu. Số lượng hàng và cột được trả về trong tập hợp kết quả cũng là siêu dữ liệu query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;8 Trong ví dụ này, chúng ta in số cột trong tập kết quả bằng phương thức $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";48 Phương thức $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";49 truy xuất thuộc tính kết nối cơ sở dữ liệu kết nối_thuộc tính. php query("SELECT VERSION()"); $version = $stm->fetch(); echo $version[0] . PHP_EOL;9 Trong ví dụ này, chúng tôi lấy tên trình điều khiển, phiên bản máy chủ và chế độ tự động gửi bằng phương thức $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";49 $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";0 Đây là một đầu ra mẫu quảng cáoTrong ví dụ sau, chúng tôi in siêu dữ liệu cột. Siêu dữ liệu cột được truy xuất bằng phương pháp $dsn = "mysql:host=localhost;dbname=mydb"; $user = "user12"; $passwd = "12user";61 Tại sao nên sử dụng PHP PDO?Phần mở rộng Đối tượng dữ liệu PHP ( PDO ) xác định giao diện nhẹ, nhất quán để truy cập cơ sở dữ liệu trong PHP . Mỗi trình điều khiển cơ sở dữ liệu triển khai giao diện PDO có thể hiển thị các tính năng dành riêng cho cơ sở dữ liệu dưới dạng các chức năng mở rộng thông thường.
PDO dạng đầy đủ là gì?PDO bằng tiếng Anh Anh
. Dạng xuất xứ được bảo hộ . một chỉ dẫn địa lý được xác định theo luật của Liên minh Châu Âu để bảo vệ các sản phẩm nông nghiệp và thực phẩm trong khu vực. Từ điển tiếng Anh Collins. Bản quyền © Nhà xuất bản HarperCollins.
Sự khác biệt giữa MySQL và PDO là gì?Như đã nêu trước đó, cả PDO và MySQLi đều cực kỳ giống nhau, nhưng có một số khác biệt nhỏ về cú pháp. MySQLi tuân theo quy ước solid_case truyền thống của PHP, trong khi PDO sử dụng camelCase . Ngoài ra, các phương thức của MySQLi được sử dụng làm thuộc tính đối tượng, trong khi PDO sử dụng cú pháp truyền thống cho các hàm.
PDO so với MySQLi là gì?PDO sẽ hoạt động trên 12 hệ thống cơ sở dữ liệu khác nhau, trong khi MySQLi sẽ chỉ hoạt động với cơ sở dữ liệu MySQL . Vì vậy, nếu bạn phải chuyển dự án của mình sang sử dụng cơ sở dữ liệu khác, PDO sẽ giúp quá trình này trở nên dễ dàng. Bạn chỉ phải thay đổi chuỗi kết nối và một vài truy vấn. |