Dokumentasi PHP Lengkap: Dasar, Contoh & Studi Kasus

PHP (Hypertext Preprocessor) adalah bahasa pemrograman server-side yang banyak digunakan untuk membangun website dinamis dan aplikasi web modern. PHP berperan penting dalam pengembangan sistem berbasis web karena mudah dipelajari, fleksibel, dan terintegrasi dengan berbagai database seperti MySQL.

Sebelum mempelajari PHP lebih dalam, Anda disarankan memahami dasar HTML dan CSS. Jika belum, silakan baca Dokumentasi Tag HTML Lengkap dan Dokumentasi Atribut HTML Lengkap sebagai fondasi.

1. Apa Itu PHP?

PHP adalah bahasa pemrograman open-source yang dijalankan di sisi server (server-side). Kode PHP diproses di server, kemudian hasilnya dikirim ke browser dalam bentuk HTML.

Ciri Utama PHP

  • Berjalan di server (server-side scripting)
  • Mudah diintegrasikan dengan HTML
  • Mendukung banyak database (MySQL, PostgreSQL, SQLite)
  • Digunakan oleh CMS populer seperti WordPress

2. Sejarah Singkat PHP

PHP pertama kali dikembangkan oleh Rasmus Lerdorf pada tahun 1995. Awalnya PHP hanya digunakan untuk mengelola halaman pribadi, namun kini berkembang menjadi bahasa backend yang matang.

Pembahasan lengkap dapat dibaca di: Sejarah PHP dan Evolusinya dalam Web Modern

3. Cara Kerja PHP

Alur kerja PHP secara umum adalah sebagai berikut:

  1. Browser mengirim permintaan ke server
  2. Server memproses kode PHP
  3. PHP menghasilkan output berupa HTML
  4. HTML dikirim ke browser

4. Struktur Dasar File PHP

File PHP menggunakan ekstensi .php dan dapat berisi HTML serta kode PHP. Kode PHP ditulis di dalam tag khusus.

<?php
echo "Hello World!";
?>

Menggabungkan PHP dan HTML

<!DOCTYPE html>
<html>
<head>
  <title>Contoh PHP</title>
</head>
<body>

<?php
  echo "<p>Halo dari PHP</p>";
?>

</body>
</html>

5. Sintaks Dasar PHP

5.1 Penulisan Perintah

Setiap perintah PHP diakhiri dengan tanda titik koma (;).

<?php
echo "Belajar PHP";
?>

5.2 Komentar dalam PHP

<?php
// Komentar satu baris
# Komentar satu baris
/*
   Komentar
   multi baris
*/
?>

6. Variabel dalam PHP

Variabel PHP diawali dengan tanda $ dan bersifat case-sensitive.

<?php
$nama = "Cicagak";
$umur = 20;
echo $nama;
?>

Aturan Penamaan Variabel

  • Diawali tanda $
  • Tidak boleh diawali angka
  • Tidak boleh mengandung spasi

7. Tipe Data PHP

Tipe Data Contoh Keterangan
String “Hello” Teks
Integer 10 Bilangan bulat
Float 3.14 Bilangan desimal
Boolean true / false Nilai logika
Array [] Kumpulan data

8. Operator Dasar PHP

Operator Aritmatika

<?php
$a = 10;
$b = 5;
echo $a + $b;
?>

Operator Perbandingan

<?php
var_dump(10 == "10"); // true
var_dump(10 === "10"); // false
?>

9. Kaitan PHP dengan JavaScript

PHP dan JavaScript sering digunakan bersama. PHP berjalan di server, sedangkan JavaScript berjalan di browser.

Jika belum membaca dokumentasi JavaScript, silakan lihat: Dokumentasi JavaScript Lengkap

Referensi resmi PHP dapat dibaca di PHP Official Documentation .

10. Percabangan (Conditional Statement)

Percabangan digunakan untuk menjalankan kode berdasarkan kondisi tertentu. PHP menyediakan beberapa jenis percabangan seperti if, else, elseif, dan switch.

10.1 If Statement

<?php
$nilai = 85;

if ($nilai >= 75) {
    echo "Lulus";
}
?>

10.2 If Else

<?php
$nilai = 60;

if ($nilai >= 75) {
    echo "Lulus";
} else {
    echo "Tidak Lulus";
}
?>

10.3 If Elseif Else

<?php
$nilai = 70;

if ($nilai >= 85) {
    echo "A";
} elseif ($nilai >= 75) {
    echo "B";
} else {
    echo "C";
}
?>

10.4 Switch Case

<?php
$hari = "Senin";

switch ($hari) {
    case "Senin":
        echo "Hari kerja";
        break;
    case "Minggu":
        echo "Hari libur";
        break;
    default:
        echo "Hari tidak valid";
}
?>

11. Perulangan (Looping)

Perulangan digunakan untuk mengeksekusi blok kode secara berulang.

11.1 For Loop

<?php
for ($i = 1; $i <= 5; $i++) {
    echo "Angka: " . $i . "<br>";
}
?>

11.2 While Loop

<?php
$i = 1;

while ($i <= 5) {
    echo $i;
    $i++;
}
?>

11.3 Do While Loop

<?php
$i = 1;

do {
    echo $i;
    $i++;
} while ($i <= 5);
?>

11.4 Foreach Loop

foreach digunakan untuk mengiterasi array.

<?php
$buah = ["Apel", "Jeruk", "Mangga"];

foreach ($buah as $item) {
    echo $item . "<br>";
}
?>

12. Fungsi (Function) dalam PHP

Fungsi adalah blok kode yang dapat digunakan kembali.

12.1 Membuat Fungsi

<?php
function sapa() {
    echo "Halo!";
}

sapa();
?>

12.2 Parameter dan Argumen

<?php
function luasPersegi($sisi) {
    return $sisi * $sisi;
}

echo luasPersegi(5);
?>

12.3 Nilai Default Parameter

<?php
function salam($nama = "Pengunjung") {
    echo "Halo " . $nama;
}

salam();
?>

13. Scope Variabel

13.1 Variabel Lokal

<?php
function test() {
    $x = 10;
    echo $x;
}

test();
?>

13.2 Variabel Global

<?php
$x = 5;

function tampil() {
    global $x;
    echo $x;
}

tampil();
?>

13.3 Static Variable

<?php
function counter() {
    static $count = 0;
    $count++;
    echo $count;
}

counter();
counter();
counter();
?>

14. Include dan Require

include dan require digunakan untuk menyisipkan file PHP lain.

<?php
include "header.php";
require "config.php";
?>

Perbedaannya, require akan menghentikan eksekusi jika file tidak ditemukan, sedangkan include hanya menampilkan peringatan.

15. Praktik Terbaik (Best Practice) PHP Dasar

  • Gunakan nama variabel yang jelas
  • Gunakan fungsi untuk kode berulang
  • Pisahkan logika dan tampilan
  • Gunakan include/require untuk struktur rapi

Untuk pemahaman database setelah PHP dasar, silakan baca: Sejarah MySQL dan Perannya dalam Database Web Modern

16. Array Lanjutan dalam PHP

Array adalah struktur data yang sangat penting dalam PHP. Selain array numerik, PHP juga mendukung array asosiatif dan multidimensi.

16.1 Array Asosiatif

Array asosiatif menggunakan key berupa string.

<?php
$user = [
  "nama" => "Andi",
  "email" => "andi@email.com",
  "umur" => 25
];

echo $user["nama"];
?>

16.2 Array Multidimensi

<?php
$produk = [
  ["nama" => "Laptop", "harga" => 8000000],
  ["nama" => "Mouse", "harga" => 150000]
];

echo $produk[0]["nama"];
?>

16.3 Looping Array

<?php
foreach ($produk as $item) {
  echo $item["nama"] . " - " . $item["harga"] . "<br>";
}
?>

17. Fungsi Array Penting

Fungsi Deskripsi Contoh
count() Menghitung jumlah elemen array count($array)
array_push() Menambah elemen ke array array_push($arr, “data”)
array_pop() Menghapus elemen terakhir array_pop($arr)
array_merge() Menggabungkan array array_merge($a, $b)

18. Fungsi String dalam PHP

Fungsi Kegunaan Contoh
strlen() Menghitung panjang string strlen(“PHP”)
str_replace() Mengganti teks str_replace(“a”,”b”,$teks)
substr() Mengambil sebagian string substr($teks,0,5)
trim() Menghapus spasi trim($teks)

19. Superglobal PHP

Superglobal adalah variabel bawaan PHP yang dapat diakses dari mana saja.

19.1 $_GET

<?php
echo $_GET["nama"];
?>

19.2 $_POST

<?php
echo $_POST["email"];
?>

19.3 $_SERVER

<?php
echo $_SERVER["HTTP_USER_AGENT"];
?>

19.4 $_SESSION

<?php
session_start();
$_SESSION["user"] = "admin";
?>

19.5 $_COOKIE

<?php
setcookie("username", "admin", time()+3600);
?>

20. Keamanan Dasar dalam PHP

Keamanan merupakan aspek penting dalam pengembangan aplikasi PHP.

  • Validasi input pengguna
  • Gunakan htmlspecialchars()
  • Hindari SQL Injection
  • Gunakan HTTPS
<?php
$nama = htmlspecialchars($_POST["nama"]);
echo $nama;
?>

Untuk backend modern, PHP sering dipadukan dengan JavaScript dan Node.js. Baca juga: Sejarah Node.js dan Perkembangannya dalam Backend Web Modern

21. Form Handling dalam PHP

PHP sering digunakan untuk memproses data dari form HTML. Metode yang umum digunakan adalah GET dan POST.

21.1 Contoh Form HTML

<form method="post" action="proses.php">
  <input type="text" name="nama">
  <input type="email" name="email">
  <button type="submit">Kirim</button>
</form>

21.2 Memproses Form dengan POST

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $nama = htmlspecialchars($_POST["nama"]);
  $email = htmlspecialchars($_POST["email"]);
  echo $nama . " - " . $email;
}
?>

22. File Handling

PHP mendukung operasi file seperti membaca dan menulis file.

22.1 Membaca File

<?php
$file = fopen("data.txt", "r");
echo fread($file, filesize("data.txt"));
fclose($file);
?>

22.2 Menulis File

<?php
$file = fopen("data.txt", "w");
fwrite($file, "Belajar PHP");
fclose($file);
?>

23. Upload File

PHP memungkinkan pengguna mengunggah file melalui form.

23.1 Form Upload

<form method="post" enctype="multipart/form-data">
  <input type="file" name="gambar">
  <button type="submit">Upload</button>
</form>

23.2 Proses Upload

<?php
$target = "uploads/" . basename($_FILES["gambar"]["name"]);
move_uploaded_file($_FILES["gambar"]["tmp_name"], $target);
?>

24. Koneksi Database MySQL

PHP sangat populer digunakan bersama MySQL untuk membangun aplikasi berbasis database.

24.1 Koneksi MySQLi

<?php
$conn = new mysqli("localhost", "user", "password", "database");

if ($conn->connect_error) {
  die("Koneksi gagal");
}
?>

24.2 Query Data

<?php
$result = $conn->query("SELECT * FROM users");

while ($row = $result->fetch_assoc()) {
  echo $row["nama"];
}
?>

25. Prepared Statement (Keamanan Database)

Prepared statement digunakan untuk mencegah SQL Injection.

<?php
$stmt = $conn->prepare("SELECT * FROM users WHERE email = ?");
$stmt->bind_param("s", $email);
$stmt->execute();
$result = $stmt->get_result();
?>

Untuk memahami peran database secara historis, silakan baca: Sejarah MySQL dan Perannya dalam Database Web Modern

26. Penutup Dokumentasi PHP

PHP tetap menjadi bahasa backend yang relevan hingga saat ini. Dengan memahami dasar, struktur, keamanan, dan koneksi database, Anda telah memiliki fondasi kuat untuk membangun aplikasi web dinamis.

Langkah selanjutnya adalah mempelajari framework PHP seperti Laravel atau mengombinasikan PHP dengan JavaScript untuk membangun aplikasi modern.

Dokumentasi resmi PHP tersedia di PHP Documentation .

27. Study Case: Sistem Login Sederhana dengan PHP & MySQL

Study case ini menunjukkan penerapan PHP pada kasus nyata berupa sistem login sederhana dengan keamanan dasar menggunakan prepared statement.

27.1 Struktur Database

CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  username VARCHAR(50),
  email VARCHAR(100),
  password VARCHAR(255)
);

27.2 Form Login

<form method="post" action="login.php">
  <input type="text" name="username" placeholder="Username">
  <input type="password" name="password" placeholder="Password">
  <button type="submit">Login</button>
</form>

27.3 Proses Login (login.php)

<?php
session_start();
$conn = new mysqli("localhost","user","password","database");

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $username = $_POST["username"];
  $password = $_POST["password"];

  $stmt = $conn->prepare("SELECT * FROM users WHERE username = ?");
  $stmt->bind_param("s", $username);
  $stmt->execute();
  $result = $stmt->get_result();

  if ($row = $result->fetch_assoc()) {
    if (password_verify($password, $row["password"])) {
      $_SESSION["login"] = true;
      echo "Login berhasil";
    } else {
      echo "Password salah";
    }
  } else {
    echo "User tidak ditemukan";
  }
}
?>

27.4 Catatan Keamanan

  • Gunakan password_hash() untuk menyimpan password
  • Gunakan prepared statement
  • Validasi input pengguna

Study case ini dapat dikembangkan menjadi sistem autentikasi lengkap seperti pada CMS atau framework modern.

28. FAQ (Frequently Asked Questions) PHP

Apa itu PHP dan fungsinya?

PHP adalah bahasa pemrograman server-side yang digunakan untuk membuat website dan aplikasi web dinamis.

Apakah PHP masih relevan?

Ya. PHP masih banyak digunakan oleh WordPress, Laravel, dan berbagai sistem backend modern.

Apa perbedaan PHP dan JavaScript?

PHP berjalan di server, sedangkan JavaScript berjalan di browser. Keduanya sering digunakan bersama.

Apakah PHP cocok untuk pemula?

PHP sangat cocok untuk pemula karena sintaksnya sederhana dan mudah dipahami.

Database apa yang paling sering digunakan dengan PHP?

MySQL adalah database yang paling umum digunakan bersama PHP.

Leave a Comment