Hướng dẫn what is pdo extension in php? - phần mở rộng pdo trong php là gì?

Phần mở rộng PHP Data Objects (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 thực hiện 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. Lưu ý rằng bạn không thể thực hiện bất kỳ chức năng cơ sở dữ liệu nào bằng cách sử dụng tiện ích mở rộng PDO; Bạn phải sử dụng trình điều khiển PDO dành riêng cho cơ sở dữ liệu để truy cập máy chủ cơ sở dữ liệu.

PDO cung cấp một lớp trừu tượng truy cập dữ liệu, có nghĩa là, bất kể cơ sở dữ liệu nào bạn đang sử dụng, bạn sử dụng cùng một chức năng để phát hành truy vấn và tìm nạp dữ liệu. PDO không cung cấp một bản tóm tắt cơ sở dữ liệu; Nó không viết lại SQL hoặc mô phỏng các tính năng bị thiếu. Bạn nên sử dụng một lớp trừu tượng toàn diện nếu bạn cần cơ sở đó.

Tàu PDO với PHP.

Không có người dùng đóng góp ghi chú cho trang này.

PDO trong PHP với ví dụ là gì?

PDO đề cập đến đối tượng dữ liệu PHP, là tiện ích mở rộng PHP xác định giao diện nhẹ và nhất quán để truy cập cơ sở dữ liệu trong PHP. Đây là một tập hợp các tiện ích mở rộng PHP cung cấp trình điều khiển dành riêng cho lớp PDO và cơ sở dữ liệu cốt lõi.

Mục đích của PDO là gì?

PDO cung cấp một lớp trừu tượng truy cập dữ liệu, có nghĩa là, bất kể cơ sở dữ liệu nào bạn đang sử dụng, bạn sử dụng cùng một chức năng để phát hành truy vấn và tìm nạp dữ liệu. PDO không cung cấp một bản tóm tắt cơ sở dữ liệu; Nó không viết lại SQL hoặc mô phỏng các tính năng bị thiếu.

PDO hoạt động như thế nào trong PHP?

Các đối tượng dữ liệu PDO PDO Php là lớp truy cập cơ sở dữ liệu cung cấp một phương thức truy cập thống nhất vào nhiều cơ sở dữ liệu. Nó không tính đến cú pháp cụ thể của cơ sở dữ liệu, nhưng có thể cho phép quá trình chuyển đổi cơ sở dữ liệu và nền tảng khá không đau, chỉ bằng cách chuyển đổi chuỗi kết nối trong nhiều trường hợp.

PDO trong mysqli là gì?

PDO (Đối tượng dữ liệu PHP) Các phiên bản trước của PHP đã sử dụng tiện ích mở rộng MySQL. Tuy nhiên, phần mở rộng này đã bị phản đối trong năm 2012.

Chức năng MySQL (PDO_MYSQL)

Ghi chú::

Trình điều khiển MySQL không hỗ trợ đúng cách PDO::PARAM_INPUT_OUTPUT thông qua pdostatement :: bindparam (); Mặc dù các tham số như vậy có thể được sử dụng, chúng không được cập nhật (nghĩa là đầu ra thực tế bị bỏ qua).PDO::PARAM_INPUT_OUTPUT via PDOStatement::bindParam(); while such parameters can be used, they are not updated (i.e. the actual output is ignored).

Cài đặt

Các phân phối Unix phổ biến bao gồm các phiên bản nhị phân của PHP có thể được cài đặt. Mặc dù các phiên bản nhị phân này thường được xây dựng với sự hỗ trợ cho các phần mở rộng MYSQL, bản thân các thư viện mở rộng có thể cần được cài đặt bằng một gói bổ sung. Kiểm tra trình quản lý gói đi kèm với phân phối đã chọn của bạn để có sẵn.

Ví dụ: trên Ubuntu, gói php5-mysql cài đặt các phần mở rộng EXT/MySQL, EXT/MySQLI và PDO_MYSQL PHP. Trên Centos, gói php-mysql cũng cài đặt ba phần mở rộng PHP này.

Ngoài ra, bạn có thể tự biên dịch phần mở rộng này. Xây dựng PHP từ nguồn cho phép bạn chỉ định các tiện ích mở rộng MySQL bạn muốn sử dụng, cũng như sự lựa chọn của bạn về thư viện máy khách cho mỗi tiện ích mở rộng.

Khi biên dịch, sử dụng--with-pdo-mysql [= dir] để cài đặt tiện ích mở rộng PDO MySQL, trong đó [=DIR] tùy chọn là thư viện cơ sở MySQL. MySQLND là thư viện mặc định. Để biết chi tiết về việc chọn thư viện, hãy xem chọn thư viện MySQL.--with-pdo-mysql[=DIR] to install the PDO MySQL extension, where the optional [=DIR] is the MySQL base library. Mysqlnd is the default library. For details about choosing a library, see Choosing a MySQL library.

Tùy chọn,--with-mysql-sock [= dir] đặt đến vị trí đến con trỏ ổ cắm unix mysql cho tất cả các tiện ích mở rộng MySQL, bao gồm PDO_MYSQL. Nếu không xác định, các vị trí mặc định được tìm kiếm.--with-mysql-sock[=DIR] sets to location to the MySQL unix socket pointer for all MySQL extensions, including PDO_MYSQL. If unspecified, the default locations are searched.

Tùy chọn,--with-zlib-dir [= dir] được sử dụng để đặt đường dẫn đến tiền tố cài đặt libz.--with-zlib-dir[=DIR] is used to set the path to the libz install prefix.

$ ./configure --with-pdo-mysql --with-mysql-sock=/var/mysql/mysql.sock

Hỗ trợ SSL được bật bằng cách sử dụng các hằng số pdo_mysql thích hợp, tương đương với việc gọi »& nbsp; mysql c chức năng API mySQL_SSL_SET (). Ngoài ra, SSL không thể được bật bằng PDO :: SetAttribution vì kết nối đã tồn tại. Xem thêm Tài liệu MySQL về »& nbsp; kết nối với MySQL với SSL.PDO::setAttribute because the connection already exists. See also the MySQL documentation about » connecting to MySQL with SSL.

Hằng số được xác định trước

Các hằng số bên dưới được xác định bởi trình điều khiển này và sẽ chỉ có sẵn khi phần mở rộng đã được biên dịch thành PHP hoặc được tải động trong thời gian chạy. Ngoài ra, các hằng số dành riêng cho trình điều khiển này chỉ nên được sử dụng nếu bạn đang sử dụng trình điều khiển này. Sử dụng các thuộc tính dành riêng cho trình điều khiển với một trình điều khiển khác có thể dẫn đến hành vi bất ngờ. PDO :: GetAttribution () có thể được sử dụng để có được thuộc tính PDO::ATTR_DRIVER_NAME để kiểm tra trình điều khiển, nếu mã của bạn có thể chạy đối với nhiều trình điều khiển.PDO::getAttribute() may be used to obtain the PDO::ATTR_DRIVER_NAME attribute to check the driver, if your code can run against multiple drivers.

PDO::MYSQL_ATTR_USE_BUFFERED_QUERY (int) Nếu thuộc tính này được đặt thành true trên pdostatement, trình điều khiển MySQL sẽ sử dụng các phiên bản đệm của API MySQL. Nếu bạn đang viết mã di động, bạn nên sử dụng pdostatement :: fetchall () thay vào đó. (int) If this attribute is set to true on a PDOStatement, the MySQL driver will use the buffered versions of the MySQL API. If you're writing portable code, you should use PDOStatement::fetchAll() instead.

Ví dụ #1 buộc các truy vấn phải được đệm trong MySQL

PHP Data Objects0

PHP Data Objects1 (int) (int)

Bật PHP Data Objects2.

Lưu ý, hằng số này chỉ có thể được sử dụng trong mảng PHP Data Objects3 khi xây dựng một tay cầm cơ sở dữ liệu mới.

PHP Data Objects4 (chuỗi) (string)

Cho phép hạn chế tải dữ liệu cục bộ vào các tệp nằm trong thư mục được chỉ định này. Có sẵn là Php 8.1.0.

Lưu ý, hằng số này chỉ có thể được sử dụng trong mảng PHP Data Objects3 khi xây dựng một tay cầm cơ sở dữ liệu mới.

PHP Data Objects4 (chuỗi) (string)

Cho phép hạn chế tải dữ liệu cục bộ vào các tệp nằm trong thư mục được chỉ định này. Có sẵn là Php 8.1.0.

Lưu ý, hằng số này chỉ có thể được sử dụng trong mảng PHP Data Objects3 khi xây dựng một tay cầm cơ sở dữ liệu mới.

PHP Data Objects4 (chuỗi) (int)

Cho phép hạn chế tải dữ liệu cục bộ vào các tệp nằm trong thư mục được chỉ định này. Có sẵn là Php 8.1.0.

PHP Data Objects6 (chuỗi) (int)

Lệnh để thực thi khi kết nối với máy chủ MySQL. Sẽ tự động được thực hiện lại khi kết nối lại.default_authentication_plugin=mysql_native_password0. This option is not available if mysqlnd is used, because mysqlnd does not read the mysql configuration files.

PHP Data Objects8 (int) (int)

Đọc các tùy chọn từ tệp tùy chọn được đặt tên thay vì từ My.cnf. Tùy chọn này không khả dụng nếu MySQLND được sử dụng, vì MySQLND không đọc các tệp cấu hình MySQL.

PHP Data Objects9 (int) (int)

Đọc các tùy chọn từ nhóm được đặt tên từ My.cnf hoặc tệp được chỉ định với default_authentication_plugin=mysql_native_password0. Tùy chọn này không khả dụng nếu MySQLND được sử dụng, vì MySQLND không đọc các tệp cấu hình MySQL.

default_authentication_plugin=mysql_native_password1 (int) (int)

Kích thước bộ đệm tối đa. Mặc định là 1 MIB. Hằng số này không được hỗ trợ khi được tổng hợp với MySQLND.

default_authentication_plugin=mysql_native_password2 (int) (int)

Thực hiện các truy vấn trực tiếp, không sử dụng các câu lệnh đã chuẩn bị.

default_authentication_plugin=mysql_native_password3 (int) (int)

Trả về số lượng hàng được tìm thấy (phù hợp), không phải số lượng hàng đã thay đổi.

default_authentication_plugin=mysql_native_password4 (int) (int)

Cho phép không gian sau tên chức năng. Làm cho tất cả các chức năng Tên từ dành riêng.

default_authentication_plugin=mysql_native_password5 (int) (int)

Bật nén giao tiếp mạng.

default_authentication_plugin=mysql_native_password6 (int) (int)

Đường dẫn tệp đến Cơ quan chứng chỉ SSL.

default_authentication_plugin=mysql_native_password7 (int) (int)

Đường dẫn tệp đến thư mục chứa chứng chỉ SSL CA đáng tin cậy, được lưu trữ ở định dạng PEM.

default_authentication_plugin=mysql_native_password8 (int) (int)

Đường dẫn tệp đến chứng chỉ SSL.

default_authentication_plugin=mysql_native_password9 (int) (int)

Danh sách một hoặc nhiều mật mã được phép sử dụng để mã hóa SSL, theo định dạng được OpenSSL hiểu. Ví dụ: PDO::PARAM_INPUT_OUTPUT0

Điều này tồn tại kể từ Php 7.0,18 và PhP 7.1.4.

PDO::PARAM_INPUT_OUTPUT3 (int) (int)

Vô hiệu hóa thực thi nhiều truy vấn trong cả PDO :: PREPARE () và PDO :: Truy vấn () khi được đặt thành PDO::PARAM_INPUT_OUTPUT4.PDO::prepare() and PDO::query() when set to PDO::PARAM_INPUT_OUTPUT4.

Lưu ý, hằng số này chỉ có thể được sử dụng trong mảng PHP Data Objects3 khi xây dựng một tay cầm cơ sở dữ liệu mới.

Cấu hình thời gian chạy

Hành vi của các chức năng này bị ảnh hưởng bởi các cài đặt trong php.ini.

Tùy chọn cấu hình PDO_MYSQL
TênMặc địnhCó thể thay đổi
pdo_mysql.default_socket"/tmp/mysql.sock"PHP_ini_System
pdo_mysql.debugVÔ GIÁ TRỊPHP_ini_System

pdo_mysql.debug

VÔ GIÁ TRỊ

Để biết thêm chi tiết và định nghĩa của các chế độ PHP_INI_*, hãy xem nơi cài đặt cấu hình có thể được đặt.string

Đây là một lời giải thích ngắn về các chỉ thị cấu hình.

PDO::PARAM_INPUT_OUTPUT6 Chuỗibool

Đặt ổ cắm miền UNIX. Giá trị này có thể được đặt tại thời điểm biên dịch nếu tìm thấy ổ cắm miền ở cấu hình. Cài đặt INI này chỉ là Unix.

PDO::PARAM_INPUT_OUTPUT7 BOOL

  • Cho phép gỡ lỗi cho PDO_MYSQL. Cài đặt này chỉ khả dụng khi PDO_MYSQL được biên dịch với MYSQLND và trong chế độ gỡ lỗi PDO.

Mục lục

PDO_MYSQL DSN - Kết nối với cơ sở dữ liệu MySQL

PDO::PARAM_INPUT_OUTPUT8

PDO::PARAM_INPUT_OUTPUT9

php5-mysql0

php5-mysql1

Brian tại Diamondsea Dot Com ¶

14 năm trước

php5-mysql2

php5-mysql3

php5-mysql1

Davey tại php dot net ¶

15 năm trước

php5-mysql5

php5-mysql6

php5-mysql1

Curt tại webmasterbond dot com

PDO_MYSQL DSN - Kết nối với cơ sở dữ liệu MySQL

php5-mysql8

php5-mysql9

php-mysql0

php-mysql1

php-mysql2

php-mysql3

php-mysql4

php-mysql5

php-mysql6

php5-mysql1

Brian tại Diamondsea Dot Com ¶

PDO_MYSQL DSN - Kết nối với cơ sở dữ liệu MySQL

php-mysql8

php-mysql9

[=DIR]0

[=DIR]1

[=DIR]2

[=DIR]3

[=DIR]4

php5-mysql1

Brian tại Diamondsea Dot Com ¶

14 năm trước

[=DIR]6

[=DIR]7

[=DIR]8

[=DIR]9

PDO::ATTR_DRIVER_NAME0

PDO::ATTR_DRIVER_NAME1

PDO::ATTR_DRIVER_NAME2

PDO::ATTR_DRIVER_NAME3

PDO::ATTR_DRIVER_NAME4

php5-mysql1

Davey tại php dot net ¶

15 năm trước

PDO::ATTR_DRIVER_NAME6

PDO trong PHP với ví dụ là gì?

PDO đề cập đến đối tượng dữ liệu PHP, là tiện ích mở rộng PHP xác định giao diện nhẹ và nhất quán để truy cập cơ sở dữ liệu trong PHP. Đây là một tập hợp các tiện ích mở rộng PHP cung cấp trình điều khiển dành riêng cho lớp PDO và cơ sở dữ liệu cốt lõi.PHP Data Object, which is a PHP extension that defines a lightweight and consistent interface for accessing a database in PHP. It is a set of PHP extensions which provide a core PDO class and database-specific driver.

Mục đích của PDO là gì?

PDO cung cấp một lớp trừu tượng truy cập dữ liệu, có nghĩa là, bất kể cơ sở dữ liệu nào bạn đang sử dụng, bạn sử dụng cùng một chức năng để phát hành truy vấn và tìm nạp dữ liệu.PDO không cung cấp một bản tóm tắt cơ sở dữ liệu;Nó không viết lại SQL hoặc mô phỏng các tính năng bị thiếu.provides a data-access abstraction layer, which means that, regardless of which database you're using, you use the same functions to issue queries and fetch data. PDO does not provide a database abstraction; it doesn't rewrite SQL or emulate missing features.

PDO hoạt động như thế nào trong PHP?

Các đối tượng dữ liệu PDO PDO Php là lớp truy cập cơ sở dữ liệu cung cấp một phương thức truy cập thống nhất vào nhiều cơ sở dữ liệu.Nó không tính đến cú pháp cụ thể của cơ sở dữ liệu, nhưng có thể cho phép quá trình chuyển đổi cơ sở dữ liệu và nền tảng khá không đau, chỉ bằng cách chuyển đổi chuỗi kết nối trong nhiều trường hợp.a database access layer providing a uniform method of access to multiple databases. It doesn't account for database-specific syntax, but can allow for the process of switching databases and platforms to be fairly painless, simply by switching the connection string in many instances.

PDO trong mysqli là gì?

PDO (Đối tượng dữ liệu PHP) Các phiên bản trước của PHP đã sử dụng tiện ích mở rộng MySQL.Tuy nhiên, phần mở rộng này đã bị phản đối trong năm 2012.PHP Data Objects) Earlier versions of PHP used the MySQL extension. However, this extension was deprecated in 2012.