Class Function dengan OOP PHP

November 26, 2002
OOP akan lebih mudah jika kita menggunakan class dan function. Class dan function biasanya terletak pada folder libraries dari sebuah project. Berikut adalah contoh penulisan serta penggunaan class dan function
<?php
// Class MySQL
// Digunakan untuk koneksi ke database dan mengeksekusi SQL

class MySQL {
 private $host = "localhost";
 private $user = "root";
 private $pass = "";
 private $dbName = "blog";
 private $id;
 private $result;

 public function connect() {
 $this->id = mysql_connect($this->host, $this->user, $this->pass) or die("Gagal Koneksi");
 mysql_select_db($this->dbName,$this->id) or die ("Salah Database");
 }

public function disconnect() {
mysql_close($this->id);
}

public function query($sql) {
$this->result = mysql_query($sql,$this->id);
}

public function fetchArray() {
$data = array();
while($baris = mysql_fetch_array($this->result)) {
$data[] = $baris;
}
return $data;
}
}
?>
Pemrograman di atas terlihat lebih rapi dan teratur, sehingga dapat lebih mudah untuk dipahami. Class diberi nama MySQL. function connect berfungsi untuk menggabungkan koneksi antara program dengan mysql serta memilih database yang digunakan. Function disconnect berfungsi untuk memutuskan koneksi. Function query digunakan untuk memberikan perintah sql untuk memanggil data-data dalam database mysql. Function fetchArray digunakan sehingga program mampu menampilkan data-data dalam database lebih dari 1. Berikut adalah class Artikel sebagai contoh penggunaan function-function dalam class MySQL. Class Artikel juga berisi function-function yang kemudian akan digunakan dalam file artikel.php.
<?php
// Class Artikel
// Digunakan untuk mengolah data di tabel Artikel

require_once 'mysql.php';

class Artikel {
 private $tableName = "artikel";
 private $mysql;

 function __construct() {
 $this->mysql = new MySQL();
 }

function read($id) {
$this->mysql->connect();
$this->mysql->query("select * from $this->tableName where id = '$id'");
return $this->mysql->fetchArray();
$this->mysql->disconnect();
}

function readByKat($kat, $from, $to) {
$this->mysql->connect();
$sql = "select * from $this->tableName
where idkat = $kat
order by tgl desc limit $from, $to";
$this->mysql->query($sql);
return $this->mysql->fetchArray();
$this->mysql->disconnect();
}

function readAll($from, $to) {
$this->mysql->connect();
$sql = "select * from $this->tableName
order by tgl desc limit $from, $to";
$this->mysql->query($sql);
return $this->mysql->fetchArray();
$this->mysql->disconnect();
}
}
?>
Dalam class Artikel terdapat perintah “require_once ‘mysql.php’;”. Perintah tersebut dibutuhkan untuk memanggil function-function yang terletak pada mysql.php, yaitu program diatas sebelumnya.
Di bawah adalah penulisan artikel.php untuk menampilkan data-data dalam table artikel. Perhatikan bahwa dibutuhkan perintah “require_once(‘libraries/artikel.class.php’);” untuk memanggil function-function dari artikel.class.php yang terletak dalam folder libraries.
<?php
require_once('libraries/artikel.class.php');

$artikel = new Artikel();
$hasil = $artikel->readAll(0,3);

foreach($hasil as $baris) {
echo "<h1 class='title'>".$baris["judul"] . "</h1>";
echo "<p class='byline'><small>".$baris["tgl"] . "</small></p>";
echo "<div class='entry'><p>".$baris["isi"] . "</p></div>";
echo '<div>
<p><a href="/index.php/2011-08-19-13-59-20/php?modul=artikelread&id='.$baris["id"]. '">Read full post &raquo;</a></p>
</div>';
}
?>
Class Function dengan OOP PHP Class Function dengan OOP PHP Reviewed by Bank Ifoel on November 26, 2002 Rating: 5
Powered by Blogger.