Database operations in PHP are a very crucial thing that is especially needed in CRUD [Create, Read, Update and Delete] operations.
In this article, we will discuss the Read part i.e. data fetching from database.
There are two ways to connect to a database using PHP. They are as follows.
- MySQLi[“i” stands for improved]
- PDO [PHP Data Objects]
MySQLi vs PDO: Both the ways are really good but there is only one difference between the two methods, PDO can work on 12 different database systems whereas MySQLi works with MySQL databases only.
Connecting to a Database:
MySQLi Object-Oriented
$conn = new mysqli[$servername, $username, $databasename]
MySQLi Procedural
$conn = mysqli_connect[$servername, $username, $password, $databasename];
PDO
$conn = new PDO["mysql:host=$servername;dbname=myDB", $username, $password, $databasename];
Executing Queries: After connecting to the database we need to run queries to fetch data. In Read operations, we will use only select queries to fetch data from the database.
MySQLi Object-Oriented
$conn->query[$query];
MySQLi Procedural
mysqli_query[$conn, $query]
PDO
$stmt = $conn->prepare[$query]; $stmt->execute[];
Close Connection: After the fetching is performed, you should close the connection to the database using the close[] function.
$conn->close[];
Sample Database
Create Table in the database:
CREATE TABLE `Student Details` [ `Roll_No` int[11] NOT NULL, `Name` varchar[255] NOT NULL, `City` varchar[255] NOT NULL, `Age` int[11] NOT NULL, PRIMARY KEY [`Roll_No`] ];
Student Details
MySQLi Object-Oriented approach:
PHP Code:
PHP
Output:
Roll No: 1 - Name: Ram | City: Delhi | Age: 18 Roll No: 2 - Name: Shyam | City: Mumbai | Age: 19 Roll No: 3 - Name: Rohit | City: Chennai | Age: 18 Roll No: 4 - Name: Suresh | City: Kolkata | Age: 20
MySQLi Procedural approach:
PHP Code:
PHP
Output:
Roll No: 1 - Name: Ram Roll No: 2 - Name: Shyam Roll No: 3 - Name: Rohit Roll No: 4 - Name: Suresh
PDO Approach:
PHP Code:
PHP
Output:
Roll No: 2 - Name: Shyam | City: Mumbai Roll No: 4 - Name: Suresh | City: Kolkata