
Pada artikel kali ini kita akan membahas Perenapan OOP di PHP
, Artikel ini sedikit mirip dengan Artikel Belajar PHP #8, yaitu koneksi ke Database Mysql
akan tetapi dengan Penerapan OOP di PHP
. Bisa dibilang artikel ini adalah gabungan dari beberapa Artikel sebelumnya yaitu OOP
dan Koneksi Mysql
.
Goals kita kali ini adalah kita bisa mengakses Database, dan bisa menampilkan data yang ada pada Database tersebut dengan konsep OOP. Langsung saja kita Praktekkan
Penerapan OOP di PHP untuk Koneksi MySQL
Pembuatan Database
Pertama, kita akan menghubungkan Database MySQL kita dengan File PHP kita. Kalau dahulu kita menggunakan 1 file config.php
. Sekarang kita akan mempraktekkan untuk membuat Database terlebih dahulu. Kita bisa menggunakan Bahasa SQL di Phpmyadmin kita. Jadi pastikan XAMPP kita jalan yaa.
Membuat Tabel
CREATE DATABASE sekolah
Selanjutnya, kita buat tabel di dalam Database
sekolah yaitu tabel siswa
.
CREATE TABLE siswa (
id int(11) NOT NULL,
nama_siswa varchar(255) NOT NULL,
email varchar(255) NOT NULL,
jenis_kelamin varchar(2) NOT NULL
)
Nah agar kita bisa mengisi tabel siswa tersebut dengan Data yang nanti akan kita tampilkan di Website kita.
INSERT INTO siswa (id, nama_siswa, email, jenis_kelamin) VALUES
(1, 'Alfian', 'alfian@gmail.com', 'L'),
(2, 'Dewi', 'dewi@gmail.com', 'P');
Okay, sekarang akan muncul di Database kita seperti ini.

Setting File PHP
Setelah selesai mengatur segala kebutuhan Database
. Sekarang kita benar-benar akan Fokus ke Penerapan OOP di PHP. Pertama, kita akan Bahas Struktur Folder
kita.
Jadi, disini aku membuat tiap File OOP
ada di sebuah Folder sendiri dengan Nama Controller
. Lalu file lain seperti index
akan berapa diluar Folder Controller
. Kurang lebih seperti ini.
Folder Sekolah
— Controller
—— SiswaController.php
— index.php
Atau kalau di Visual Studio Code terlihat seperti ini

Sekarang, kita akan mulai menulis syntax di SiswaController.php
, disini kita akan menerapkan sistem OOP, dimana akan ada Class
sendiri dengan nama Siswa
. Lalu ada Fungsi
yang ada di dalam Class Siswa
.
File SiswaController.php
<?php
class Siswa
{
public $siswa;
public $pdo;
public function __construct()
{
$host = "localhost";
$database = "sekolah";
$user = "root";
$password = "";
$this->pdo = new PDO("mysql:host={$host}; dbname={$database}", $user, $password);
}
public function getAll()
{
$this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$query = "SELECT * FROM siswa";
$stmt = $this->pdo->prepare($query);
$stmt->execute();
$result = $stmt->fetchAll();
return $result;
}
}
Bisa dilihat di syntax diatas, Syntax diatas adalah Penerapan OOP di PHP yang kita buat. Kita sudah membuat Class
dengan nama Siswa
. Nah Class Siswa
ini memiliki dua Fungsi
yang berbeda, yaitu __construct()
dan getAll()
. Fungsi __construct()
digunakan untuk Koneksi ke Database kita. Oleh karena itu disana ada beberapa settingan yaitu $host, $database, $user,
dan $password
.
Setelah itu ada Fungsi getAll()
. Fungsi ini memiliki $query = "SELECT * FROM siswa";
. Nah Syntax SQL ini lah yang akan kita gunakan untuk mengambil Data dari Database dan menampilkannya di Website kita.
Sekarang Kita selesai mengatur penerapan OOP di PHP, kita akan Fokus ke file index.php
. Kita akan menggunakan Tabel dari Bootstrap sehingga tampilannya lebih baik
File index.php
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Bootstrap CSS -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
<title>Siswa</title>
</head>
<body>
<div class="container mt-5">
<table class="table">
<thead>
<tr>
<th scope="col">No</th>
<th scope="col">Nama</th>
<th scope="col">Email</th>
<th scope="col">Jenis Kelamin</th>
</tr>
</thead>
<tbody>
<?php
include_once 'Controller/SiswaController.php';
$siswa = new Siswa;
$row = $siswa->getAll();
$number = 1;
foreach ($row as $item) {
?>
<tr>
<th scope="row"><?php echo $number ?></th>
<td><?php echo $item['nama_siswa'] ?></td>
<td><?php echo $item['email'] ?></td>
<td><?php echo $item['jenis_kelamin'] ?></td>
</tr>
<?php
$number++;
}
?>
</tbody>
</table>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>
</body>
</html>
Bisa dilihat pada syntax <?php
diatas. Disini kita memanggil OOP
kita yaitu SiswaController.php
yang berada di dalam Folder Controller
. Setelah kita panggil, sekarang kita bisa menjalankan salah satu fungsi nya yaitu getAll()
untuk mengambil semua Data dari Database.
Karena Data yang ada pada Table Siswa
bisa saja lebih dari satu. kita menggunakan perulangan foreach
untuk menampilkan semua Data dari Database kita.
Syntax diatas akan menghasilkan

Gambar diatas sudah menampilkan semua Data yang ada di Database didalam Website kita.
Kedepannya, kita akan terfokus untuk edit SiswaController.php
. Didalam File Siswa itu, kita akan menuliskan beberapa Fungsi yang lain seperti Edit Data, Menambah Data, dan Bahkan menghapus Data.
Kesimpulan
Disini kita sudah sama-sama mempelajari Penerapan OOP di PHP. dan kita juga mengetahui bahwa Penerapan OOP di PHP ini sangat penting untuk memudahkan kita dalam membuat Codingan PHP kita, dan tentunya membuat Codingan kita lebih Rapi dan Mudah dibaca.
Itu saja untuk Artikel kali ini teman-teman. Semoga bermanfaat untuk kita semua.
1 Response
[…] Belajar PHP #11 : Penerapan OOP di PHP […]