1. 何為PDO?

PDO(PHP數(shù)據(jù)對象) 是一個輕量級的、具有兼容接口的PHP數(shù)據(jù)連接拓展,是一個PHP官方的PECL庫,隨PHP 5.1發(fā)布,需要PHP 5的面向?qū)ο笾С?,因而在更早的版本上無法使用。它所提供的數(shù)據(jù)接入抽象層,具有與具體數(shù)據(jù)庫類型無關(guān)的優(yōu)勢,為它所支持的數(shù)據(jù)庫提供統(tǒng)一的操作接口。目前支持的數(shù)據(jù)庫有Cubrid、FreeTDS / Microsoft SQL Server / Sybase、Firebird/Interbase 6、IBM DB2、IBM Informix Dynamic Server、MySQL 3.x/4.x/5.x、Oracle Call Interface、ODBC v3 (IBM DB2, unixODBC and win32 ODBC)、PostgreSQL、SQLite 3 and SQLite 2、Microsoft SQL Server / SQL Azure等。由于PDO是在底層實現(xiàn)的統(tǒng)一的數(shù)據(jù)庫操作接口,因而利用它能夠?qū)崿F(xiàn)更高級的數(shù)據(jù)庫操作,比如存儲過程的調(diào)度等。2. PDO實例下面將實現(xiàn)一個用PDO連接SQLite數(shù)據(jù)庫的實現(xiàn)分頁顯示的例子,查詢的結(jié)果輸出為JSON數(shù)據(jù)。iOS培訓(xùn),Swift培訓(xùn),蘋果開發(fā)培訓(xùn),移動開發(fā)培訓(xùn)

$dbname = 'shelf.sqlite'; try { $db = new PDO("sqlite:" . $dbname); $sth = $db->prepare('select * from book where cat_id=:id limit :offset, :limit', array ( PDO :: ATTR_CURSOR => PDO :: CURSOR_FWDONLY ));   $result = $sth->execute(array ( ':id' => $cat, ':offset' => ($pg -1) * $limit, ':limit' => $limit )); $list = array (); $query = $db->query('select count(*) from book where cat_id=' . $cat)->fetch(); //Only 1 row $list["count"] = $query[0]; if ($result) { while ($row =