2013-04-24 25 views
5

Tôi nhận thấy rằng nhiều người đang sử dụng hoặc chuyển sang pdo, tôi chưa từng sử dụng điều đó trước đây và tôi thực sự miễn cưỡng thay đổi điều đó, tôi vẫn chưa thay đổi, nhưng tôi muốn biết từ những người sử dụng pdo hàng ngày tại sao tôi nên thay đổi điều đó, tôi có nghĩa là những gì lợi thế hiện nó có trên mysql_ * hoặc mysqli_ *, tôi đã googled rất nhiều về điều đó nhưng tôi đã không tìm thấy một câu trả lời thỏa đáng . Cảm ơnƯu điểm của pdo trên mysql_ * hoặc mysqli_ *

+0

Hỗ trợ trình điều khiển và thông số được đặt tên. – elclanrs

+0

Tôi không nghĩ rằng tôi thực sự hiểu điểm đó, trình điều khiển hoặc thông số nào? –

+2

Bạn có thích xem các ví dụ hướng dẫn sử dụng hoặc sử dụng chưa? Có điều gì đó cụ thể mà bạn muốn được rediscussed ở đây? http://www.php.net/manual/en/mysqlinfo.api.choosing.php – mario

Trả lời

2

Nó không phải là về hỗ trợ nhiều cơ sở dữ liệu với một ứng dụng (mặc dù bạn có thể, cẩn thận). Nó không phải là làm cho nó dễ dàng để thay đổi cơ sở dữ liệu trong tương lai (mặc dù nó giúp). Đó là về việc có một giao diện nhất quán, hợp lý để sử dụng bất kể cơ sở dữ liệu. Không chỉ giúp các lập trình viên (bằng cách làm cho các kỹ năng của họ được áp dụng rộng rãi hơn) và các dự án (bằng cách làm cho các lập trình viên dễ dàng nhảy vào) hơn, nó cũng làm cho nó dễ dàng hơn để tạo ra các thư viện ngồi một lớp phía trên lớp truy cập dữ liệu. . Perl đã có DBI trong 20 năm và đó là một điều tốt đẹp. PDO là một khái niệm rất giống nhau (trên thực tế nó đánh cắp ít nhất một nửa giao diện của DBI).

0

PDO nhằm mục đích hỗ trợ truy cập minh bạch vào các dạng cơ sở dữ liệu SQL khác nhau. Nó được gọi là 'Lớp trừu tượng truy cập dữ liệu' cho PHP.

Nếu bạn hạn chế ứng dụng của mình chỉ sử dụng truy vấn chuẩn SQL99, các câu hỏi trên phải đúng trong số đời thực;).

Ngoài ra PDO là một giao diện đáng tin cậy cho các nhà phát triển mở rộng sắp xây dựng một phần mở rộng cơ sở dữ liệu mới. Họ chỉ có thể viết một trình điều khiển dor PDO và cơ sở dữ liệu có thể được truy cập bằng cách sử dụng một giao diện nổi tiếng trong PHP - giao diện PDO.

Kết luận:

  • PDO nhằm mục đích truy cập cơ sở dữ liệu similarize trong PHP trên các loại cơ sở dữ liệu khác nhau
  • nếu sử dụng SQL99 truy vấn chuẩn, bạn có thể thay đổi các sản phẩm cơ sở dữ liệu chỉ được thay đổi chuỗi kết nối
  • PDO là một giao diện cũng biết để truy cập cơ sở dữ liệu có thể được sử dụng bởi các nhà phát triển mở rộng
+2

Hiệu chỉnh, PDO là lớp trừu tượng truy cập dữ liệu, không phải là lớp trừu tượng cơ sở dữ liệu.Ví dụ, PDO không thể cung cấp mô phỏng cho các hàm cơ sở dữ liệu gốc oracle đối với cơ sở dữ liệu MySQL. http://us3.php.net/manual/en/intro.pdo.php –

-1

PDO giúp di chuyển dễ dàng hơn giữa hai DBMS khác nhau. Một số người cũng sử dụng nó cho ứng dụng hỗ trợ tất cả các DBMS được hỗ trợ bởi PDO. Nhưng xin lưu ý rằng đây thường là một hành động sai: nếu bạn không biết rõ phần mềm, bạn không nên nói với người dùng rằng bạn ủng hộ nó, bởi vì bạn sẽ nói dối - bởi vì bạn không thể giải quyết được các vấn đề thực tế.

mysqli không phải là trừu tượng. Nó là một api nhanh và đáng tin cậy cho MySQL, và nên là lựa chọn đầu tiên.

Các vấn đề liên quan