In this article, we will talk about what a PDO is, why is it necessary, and how to work with it.
Let's start with the fact that for a long time php-programmers have been discussing the fate of the native functions to work with the database: mysql_connect, mysql_query, and others. The fact is that in upcoming versions of PHP data will be erased, these functions will go "Obsolete". Thus PHP developers should force on other tools to work with the database.
Currently, there are two alternatives solutions; mysqli extension and expansion of PDO. In this article, we will discuss PDO.
PDO - PHP Data Objects - is a layer that offers a versatile way to work with multiple databases.
This layer has several advantages:
- PDO allows you to work with different databases, such as: MYSQL, Oracle, PostgreSQL and many others.
- PDO allows you to work with a prepared statement
Now let's talk about all this in more detail.
Connecting to a Database Using PDO
Before you start working with PDO, you must make sure that you have the correct extension - php_pdo_mysql.dll. This can be verified through the function phpinfo(). If everything is okay, you are good to go.
First we need to connect to the database:
As you can see from the example, each database connection string is slightly different from each other
You should always use try/catch when you are trying to connect to the unit, so that on exception we do not disclosed any data to the user.
There is no special method to close the connection in PDO, we can close the connection by overriding the variable:
$Database = null;
Now let's talk about the queries in PDO for the connection we have just created. There are three main methods:
Method $Database-> query
This method is used for simple queries, since it is not protected. Returns FALSE if an error occurs.
Method $Database-> exec
This method is used in cases where you do not return any data. The method returns the number of affected records, or FALSE in case of error.
Method is responsible for prepared statements, and it is encouraged to use.
After preparing the query, the query can be executed by
$Res-> execute ($Data) .
One of the "chips" PDO, as you remember, are just placeholders registered. let's look in more detail as you work with them:
use of unnamed placeholders are considered good practice, although I personally do not use them at all.
Now lets see how to fetch data
$Res-> fetch - Fetches the next row and returns in the required form.
$Res-> fetchAll - returns an array of all selected rows.
$Res-> fetchObject - selects the next row and returns it as an object.
$Res-> fetch can take additional parameters.
To learn more about PDO on the official website of the developers:
This concludes our introduction to PDO. Let me know how you like it.