Pemrograman PHP untuk Pemula
Tulisan catatan referensi ini masih dalam proses pengerjaan.
Mengapa PHP ?
Pemilihan Bahasa Pemrograman melibatkan banyak faktor, termasuk salah satu faktor terpenting adalah "tujuannya mau untuk apa". Kalau kamu mau bikin website, dan mau pakai WordPress atau pakai framework Laravel, tentu saja salah satu yang perlu kamu pelajari adalah PHP.
Kalau kamu mau extend web-based ERP seperti Odoo atau ERP Next, kamu tentu akan gunakan Python, bukan PHP. Kalau kamu mau pakai Jekyll untuk bikin static site, kamu perlu Ruby, bukan PHP.
Dalam kesempatan ngerjakan project berbeda atau dalam situasi yang berbeda, mungkin kamu akan pakai bahasa pemrograman yang berbeda. Dan it's okay, tidak masalah. Tidak ada satu bahasa pemrograman yang cocok untuk segala hal.
Jangan bingung mau belajar bahasa apa. Kalau kamu sudah kuasai satu bahasa pemrograman, tentu akan jauh lebih mudah ketika belajar/pakai bahasa lainnya.
Nah, di sini kita akan belajar PHP.
Tools yang Digunakan
- Code editor cukup pakai salah satu dari 3 di bawah ini:
- VS Code (https://code.visualstudio.com/) - FREE
- Sublime Text (https://www.sublimetext.com/) - FREE Evaluation
- PhpStorm (https://www.jetbrains.com/phpstorm/) - FREE 30-days trial
- PHP dan MySQL. Bisa diinstall menggunakan beberapa cara, pilih salah satu saja:
- Menggunakan Laragon (https://laragon.org/) - FREE
- Menggunakan XAMPP (https://www.apachefriends.org/) - FREE
- Install manually, pakai package manager seperti
Homebrew
di MacOS, atau package manager lainnya di Linux atau di WSL (Windows Subsystem for Linux). - Menggunakan Docker (kalau sudah biasa pakai
docker
)
- Terminal. Bisa gunakan salah satu dari:
- Pakai terminal bawaan:
- Di Window, bisa pakai
PowerShell
ataucmd
, atau Windows Terminal (https://learn.microsoft.com/en-us/windows/terminal/) - Di Linux dan Mac OS, sudah ada bawaan Terminal.
- Kalau pakai Laragon, ada terminal bawaannya juga.
- Di Window, bisa pakai
- Pakai Warp (https://www.warp.dev/) - ada versi yang FREE
- Pakai terminal bawaan:
- Database administration tool, GUI untuk memudahkan ngecek dan ngelola database (MySQL). Pilih salah satu dari:
- TablePlus (https://tableplus.com/) - ada versi yang FREE
- HeidiSQL (https://www.heidisql.com/) - FREE, desktop app, bawaan Laragon
- phpMyAdmin - FREE, web based, bawaan XAMPP
- Browser seperti Google Chrome, Mozilla Firefox, Edge, Safari. Dan DevTools bawaan browser.
Coding PHP
I. Permulaan
1. Menyiapkan Folder Proyek
Kita perlu buat folder khusus untuk menyimpan file-file proyek website kita, termasuk kode PHP, HTML, CSS, JavaScript, dll.
Lokasi folder perlu menyesuaikan dengan settingan web server.
- Kalau pakai XAMPP, biasanya di
C:\xampp\htdocs
- Sesuaikan dengan lokasi
htdocs
pada XAMPP yang kamu install. - Kalau kamu buat folder proyek di
htdocs\BelajarDev
, maka by default kamu bisa akses proyek di local komputer kamu via browser dengan alamathttp://localhost/BelajarDev
- Sesuaikan dengan lokasi
- Untuk pembelajaran, kamu juga bisa pakai PHP built-in web server.
- Kamu bebas tentukan di mana folder proyek kamu. Dari situlah nanti kita akan jalankan web servernya.
Contoh command bikin folder proyek via terminal:
(ini hanya contoh untuk referensi, sesuaikan lokasi folder proyek):
cd ~
mkdir sites && mkdir sites/BelajarDev
cd sites/BelajarDev
Setelah folder proyek siap, silahkan buka folder proyek di code editor kamu.
Kalau pakai VS Code, mungkin kamu bisa klik kanan nama foldernya dan pilih "Open with Code".
!Pemrograman PHP untuk Pemula Notes 20250412061958224.png
Atau, di terminal bisa jalankan perintahcode
diikuti lokasi folder, misalnya:
code ~/sites/BelajarDev
2. Menjalankan Built-in PHP Web Server
Misalnya, di folder proyek kamu punya 1 file index.html
dengan isi seperti ini:
File: index.html
<h1>Hello World</h1>
Pada folder proyek, jalankan PHP built-in web server menggunakan perintah:
php -S localhost:8000
Setelah web server berjalan, kamu bisa akses index.html
di browser dengan alamat http://localhost:8000/index.html.
Atau, bisa pakai http://localhost:8000 saja. Web server biasanya otomatis menampilkan file index (seperti index.html
atau index.php
) kalau kita tidak sebutkan nama file-nya. Tapi untuk selain index, kamu tetap harus menyebutkannya dengan jelas. Dan kalau ternyata file index tidak ada, web server bakal ngasih pesan error.
3. Blok PHP di HTML
Kode PHP dituliskan dalam PHP Block yang ditandai dengan <?php
dan biasa ditutup dengan ?>
.
Di luar block itu, tidak diproses oleh PHP.
Misalnya, di sini kita buat file index.php
di dalam folder proyek.
Kemudian kita tuliskan kode PHP bersama dengan HTML seperti ini:
File: index.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<h2>
<?php
// Di dalam blok PHP
echo "Hello World";
?>
</h2>
</body>
</html>
echo
digunakan untuk meng-outputkan nilai."Hello World"
adalah nilai string (tulisan) yang di-output-kan olehecho
.- Nilai string bisa diapit oleh 2 petik dua (
"
dan"
), atau 2 petik satu ('
dan'
).
- Nilai string bisa diapit oleh 2 petik dua (
- Baris perintah selalu diakhiri dengan tanda titik koma
;
.
4. Nulis "Hello World"
Di bawah ini semuanya meng-outputkan Hello World
.
<?php echo "Hello World"; ?>
<?php echo 'Hello World'; ?>
<?php
echo "Hello";
echo " ";
echo "World";
?>
<?php echo "Hello " . "World"; ?>
<?php echo "Hello" . " " . "World"; ?>
- Operator titik
.
digunakan untuk menggabungkan string.
<?php echo "Hello" . " " . "World" ?>
- Untuk perintah terakhir sebelum penutup blok
?>
, tidak harus dikasih titik koma;
.
II. Variabel
1. Menyimpan Nilai ke dalam Variabel
Variabel dipakai untuk menyimpan nilai dengan nama tertentu. Misalnya:
<?php
$nama = "World";
echo "Hello" . " " . $nama;
?>
- Kode di atas meng-output-kan
Hello World
. - Nilai tulisan
World
disimpan dalam variabel$nama
$namaVar = "nilai";
$namaVar = 1;
$namaVar = true;
- Gunakan tanda 1 sama dengan = untuk memasukkan nilai ke dalam variabel.
Kenapa perlu pakai variabel?
- Untuk melabeli nilai tertentu dengan nama
- Untuk menyimpan nilai yang akan diproses
- Untuk menyimpan nilai yang bisa berubah-rubah atau tidak menentu, seperti:
- nilai dari database
- nilai yang didapat dari aplikasi lain
- nilai yang didapat dari isian user
- dll.
2. Penamaan Variabel
- Untuk menuliskan variabel diawali dengan
$
, diikuti dengan nama variabel. - Nama variabel ditulis pakai kombinasi huruf, angka, dan/atau underscore
_
. - Tapi untuk karakter pertamanya tidak boleh angka.
$namaRanking1
-> valid$1RankNama
-> tidak valid$_namaRanking1
-> valid
- Bila nama variabel lebih dari satu kata, seperti
$namaRanking1
disarankan menggunakan format camel case seperti itu (setiap awal kata selain huruf pertama diawali dengan huruf kapital).- Ada juga yg memisahkan kata dengan
_
. - Silahkan mau pakai format kayak mana, yang penting harus konsisten. Gunakan format yang sama untuk semua bagian kode dalam proyek kamu.
- Ada juga yg memisahkan kata dengan
3. Nulis "Hello World" Lagi
Di bawah ini semuanya meng-outputkan Hello World
.
<h2>
<?php
$kataSapa = "Hello";
$nama = "World";
echo $kataSapa . " " . $nama;
?>
</h2>
<?php
$kataSapa = "Hello";
$nama = "World";
$sapaan = $kataSapa . " " . $nama;
?>
<h2>
<?= $sapaan ?>
</h2>
<?= ... ?>
merupakan cara lebih singkat untuk menyatakan<?php echo ... ?>
'
<?php
$kataSapa = "Hello";
?>
<h2>
<?php echo "$kataSapa World" ?>
</h2>
- Kalau string dengan petik dua
" "
mengandung variabel (seperti di atas), PHP akan cari dan gunakan nilai variabelnya. Sehingga, kode di atas outputnya:Hello World
. - Berbeda dari string dengan petik satu
' '
yang mengandung variabel,
misalnya:'$kataSapa World'
; PHP anggap itu sebagai string biasa.- Sehingga,
<?php echo '$kataSapa World' ?>
outputnya:$kataSapa World
.
- Sehingga,
<?php
$kataSapa = "Hello";
?>
<h2>
<?php echo "{$kataSapa} World" ?>
</h2>
- Variabel dalam
" "
bisa diapit dengan{ }
, seperti"{$kataSapa}"
. - Ini lebih memperjelas mana yang merupakan variabel.
- Ini jadi solusi untuk menuliskan nama variabel yang langsung diikuti oleh karakter lainnya.
- Misalnya
"{$kataSapa}oooo..., World"
. - Kalau tanpa
{ }
, seperti"$kataSapaoooo..., World"
; bisa bikin error.- Karena variabel
$kataSapaoooo
tidak dikenali
- Karena variabel
- Misalnya