Book Image

Learning PHP Data Objects

By : Dennis Popel
Book Image

Learning PHP Data Objects

By: Dennis Popel

Overview of this book

PDO is lighter, faster, and more powerful than existing PHP data abstraction interfaces. PDO is a common interface to different databases that must be used with a database-specific PDO driver to access a particular database server: the PDO extension does not provide a database abstraction by itself; it doesn't rewrite SQL, emulate missing database features, or perform any database functions using by itself. It performs the same role as other classic database abstraction layers such as ODBC and JDBC: it's a query abstraction layer that abstracts the mechanism for accessing a database and manipulating the returned records; each database driver that implements the PDO interface can also expose database-specific features as regular extension functions. ¬ PDO ships with PHP 5.1, and is available as an extension for PHP 5.0; it requires the new object-oriented features of PHP 5, and cannot run with earlier versions of PHP.This book will teach you how to use the PDO, including its advanced features. Readers need to be aware of the basics of data abstraction and should be familiar with PHP.
Table of Contents (13 chapters)

Connecting Using the Connection Configuration File and php.ini Setting


When we discussed the connection strings (or the data source names for PDO), we saw that the connection string starts with the driver name followed by a semicolon. PDO also supports configuration files—a file that contains the connection string. For example, we can create a file called pdo.dsn in the directory where we can keep the application files and put the connection string there:

mysql:host=localhost;dbname=pdo
or
sqlite:/www/hosts/localhost/pdo.db

Alternatively, we can create two files, mysql.dsn and sqlite.dsn, containing the first and the second connection strings respectively.

Then in the PDO constructor, we can specify the configuration file path or URL, not just the connection string:

uri:./pdo.dsn

PDO will read the file and use the connection string specified there. The advantage of using this method is that you can specify not just a local file, but any URL so that a remote file can be included (provided...