Clean Code PHP — Panduan Lengkap

paket web master komplit

1. Gunakan Nama Variabel yang Jelas

Nama harus menggambarkan isi atau tujuan variabel.

❌ Buruk

$a = 100;

✅ Clean

$jumlahPeserta = 100;

2. Gunakan Nama Fungsi yang Mendeskripsikan Aksi

Nama fungsi = kata kerja + objek.

❌ Buruk

function ps($a, $b) {
    return $a + $b;
}

✅ Clean

function hitungTotal($harga, $jumlah) {
    return $harga * $jumlah;
}

3. Fungsi Harus Fokus Pada Satu Tugas (Single Responsibility)

Setiap fungsi idealnya melakukan satu hal dengan baik.

❌ Buruk (fungsi melakukan banyak hal)

function prosesData($data) {
    $hasil = json_decode($data);
    file_put_contents("log.txt", $data);
    return $hasil;
}

✅ Clean

function decodeJSON($data) {
    return json_decode($data, true);
}

function simpanLog($data) {
    file_put_contents("log.txt", $data);
}

4. Hindari Duplikasi Kode (DRY — Don’t Repeat Yourself)

❌ Buruk

if ($status == "aktif") {
   echo "Akun aktif";
}
if ($status == "aktif") {
   kirimEmail();
}

✅ Clean

if ($status === "aktif") {
   echo "Akun aktif";
   kirimEmail();
}

Atau bahkan:

$isAktif = $status === "aktif";

5. Gunakan Indentasi dan Format Rapi

Ini sangat penting untuk keterbacaan.

❌ Berantakan

if($a==1){
echo "ok";
}else{
echo "fail";
}

✅ Clean

if ($a == 1) {
    echo "ok";
} else {
    echo "fail";
}

6. Gunakan Early Return (Kurangi Indentasi Dalam)

Kode lebih bersih jika kondisi-kondisi gagal dikeluarkan lebih awal.

❌ Buruk

function getUser($id) {
    if ($id) {
        $data = queryUser($id);
        if ($data) {
            return $data;
        } else {
            return null;
        }
    } else {
        return null;
    }
}

✅ Clean

function getUser($id) {
    if (!$id) return null;

    $data = queryUser($id);
    if (!$data) return null;

    return $data;
}

Lebih ringkas & lebih mudah dibaca.


7. Gunakan Konstanta untuk Nilai Tetap

Agar tidak bertebaran “magic number” atau “magic string”.

❌ Buruk

if ($tipe == 3) {
    echo "Admin";
}

✅ Clean

const ROLE_ADMIN = 3;

if ($tipe === ROLE_ADMIN) {
    echo "Admin";
}

8. Gunakan OOP Bila Proyek Besar

OOP membantu menjaga struktur tetap teratur.

Contoh Clean:

class User {
    public function __construct(
        public string $nama,
        public string $email
    ) {}
}

9. Gunakan Validasi Input yang Jelas

Hindari kode validasi yang panjang menggunakan banyak IF.

❌ Buruk

if (!isset($_POST['nama']) || $_POST['nama'] == "") {
    echo "nama wajib";
    exit;
}

✅ Clean

function validasiInput($key) {
    return isset($_POST[$key]) && trim($_POST[$key]) !== '';
}

if (!validasiInput('nama')) {
    echo "Nama wajib diisi";
    exit;
}

10. Gunakan Comment Hanya Jika Perlu

Komentar diperlukan jika logika sangat penting atau kompleks, bukan menjelaskan hal yang sudah jelas.

❌ Komentar berlebihan

// Menambahkan 1 ke angka
$a = $a + 1;

✅ Komentar tepat

// Hashing password untuk keamanan
$passwordHash = password_hash($password, PASSWORD_DEFAULT);

Leave a Reply

Your email address will not be published. Required fields are marked *