Menurut sisi penggunaan bahasa pemrograman berbasis web terdiri dari dua yaitu pemrograman sisi klien dan pemrograman sisi server. Sebagaimana yang telah diterangkan di dalam chapter-chapter sebelumnya, javscript termasuk dalam bahasa pemrograman web berbasis client side.
Sejauh ini, kita telah mengenal Javascript adalah bahasa pemrograman sisi klien yang populer dan memiliki kemampuan untuk mengubah konten dan style halaman web secara dinamis. Lalu, pertanyaannya mengapa bahasa pemrograman sisi server diperlukan?
Table of Contents
Perbandingan bahasa pemrograman web berbasis client side dengan server side
Kelemahan pemrograman web berbasis client side adalah eksekusi kode-kodenya bergantung pada browser yang digunakan klien/pengguna. Sudah banyak upaya yang dibuat dalam menetapkan standarisasi Javascript, namun masih ada saja perbedaan perilaku dalam eksekusi kode Javsacript dalam browser-browser yang berbeda.
Berbeda dengan javascript, program PHP berjalan di server halaman web Anda, jadi setiap pengguna yang mengakses halaman web menjalankan kode PHP di server yang sama, menggunakan serangkaian fitur pustaka yang sama. Dengan PHP kode aplikasi akan berjalan dan persis apa yang akan dihasilkannya untuk semua pengguna.
Kelebihan lain bahasa pemrograman php yang berjalan pada sisi server adalah kemampuan untuk mengontrol server PHP itu sendiri. Karena semua kode PHP di halaman web berjalan dari lokasi yang sama, kita dapat menyesuaikan pengaturan fitur di server PHP ke lingkungan spesifik kita sendiri. Ini memungkinkan developer PHP untuk menggunakan pustaka yang disesuaikan dengan kebutuhan atau mengatur penggunaan memori sesuai kebutuhan, dan memberi kita kontrol atas kinerja aplikasi web.
Dari sisi manajemen data, program php langsung mengolah data yang disimpan di server. Karena itu, waktu yang diperlukan untuk menangani kemudian mengolah dan mengirim data dari server menjadi efisien. Semua pengguna menggunakan data yang bersumber pada server yang sama, sehingga memudahkan dalam konsistensi data.
Bahasa pemrograman PHP
PHP adalah salah satu bahasa pemrograman serba guna yang paling populer. Ia banyak digunakan untuk membuat berbagai aplikasi, sifatnya yang fleksibel membuat pemakaiannya menjadi sangat luas mulai dari aplikasi skala kecil sampai besar. Hari ini siapa yang tidak mengenal Facebook. Salah satu media sosial terbesar di dunia ini menggunakan PHP sebagai bahasa pemrogramannya.
Saat ini versi paling anyar adalah PHP 7.4 dan pada saat artikel ini ditulis tim pengembang sedang merilis kandidat versi 8.0.0 sebagaimana dilansir dari website resminya https://php.net.
Cara penggunaan PHP
Pada dasarnya, penggunaan PHP adalah dengan menyisipkan skrip PHP ke dalam halaman HTML. Penulisannya menggunakan kombinasi tag pembuka <?php dan tag penutup ?>.
<!DOCTYPE html>
<html>
<body>
<?php
kode php
?>
</body>
</html>
Tag PHP dapat ditempatkan di mana saja dalam kode HTML – tidak wajib hanya berada di elemen body. Kita dapat memiliki elemen HTML sebanyak yang kita butuhkan di luar area kode PHP untuk menyediakan konten pendukung di halaman web, tetapi kita tidak dapat menempatkan elemen HTML di dalam area kode PHP. Hanya kode PHP yang dapat berada di dalam area kode PHP.
Selain metode tag di atas ada juga metode lain
<!DOCTYPE html>
<html>
<body>
<script language="php">
kode php
</script>
</body>
</html>
Cara ini terlihat sangat mirip dengan cara yang digunakan untuk menanamkan kode Javascript ke dalam kode HTML. Sebagai catatan dalam penggunaan cara ini wajib untuk menyertakan atribut bahasa dalam tag dan identifikasi kode sebagai kode PHP. Menggunakan tag <script> yang sama untuk menyematkan kode Javascript dan PHP bisa sedikit membingungkan, itulah sebabnya tag <?php telah menjadi sangat populer. Sangat jarang orang menggunakan cara ini (tag <script>).
Jenis tag PHP ketiga disebut tag terbuka pendek. Ini menggunakan <? sebagai tag pembuka, alih-alih tag <?php penuh. Agar metode tag ini berfungsi, server PHP harus mengaktifkan pengaturan short_open_tag dalam file konfigurasinya. Tag terbuka pendek menyimpan beberapa pengetikan, tetapi bisa membingungkan saat kita melihat melalui kode program.
Jenis tag PHP keempat adalah tag pembuka <%. Ini disebut tag gaya ASP karena ini adalah tag yang sama yang digunakan saat pemrograman dengan Microsoft ASP.NET keluarga bahasa pemrograman sisi server. Jika Anda sudah merasa nyaman menggunakan ASP.NET, Anda dapat menggunakan gaya tag ini untuk pengkodean PHP juga. Mirip dengan tag terbuka pendek, Anda harus mengaktifkan asp_tags pada file konfigurasi PHP untuk menggunakan metode ini.
Karena PHP adalah bahasa pemrograman sisi server, prosesor PHP yang menjalankan kode PHP terletak di server – biasanya server fisik yang sama dengan server web. Untuk memproses kode PHP yang disematkan, halaman web harus meneruskan dokumen HTML ke server PHP dalam perjalanan ke pengunjung situs yang memintanya.
Cara kerja bahasa pemrograman PHP
Server web harus dapat mendeteksi kapan halaman web berisi kode PHP tertanam dan ketika tidak. Jika halaman web berisi kode PHP, server web harus meneruskan seluruh dokumen HTML ke server PHP untuk diproses. Kita tidak ingin server web meneruskan semua dokumen HTML ke server PHP, karena itu akan memperlambat pemrosesan halaman web yang tidak berisi kode PHP yang disematkan.
Server web harus tahu kapan ia harus mengirim file HTML5 ke server PHP untuk diproses. Itu semua diatur dengan menggunakan ekstensi file. Ketika server web Apache memiliki modul PHP yang diinstal, ada arahan dalam file konfigurasi httpd.conf utama yang mengidentifikasi program PHP yang perlu dikirim ke server PHP untuk diproses. Arahan itu terlihat seperti ini:
AddHandler application/x-httpd-php .php
Baris perintah di atas memberi tahu server web Apache untuk mengirim file apa pun yang permintaan pengunjung situs yang diakhiri dengan ekstensi file .php ke server PHP. Dengan cara ini, kita dapat mengidentifikasi halaman web apa pun yang berisi kode PHP yang disematkan dengan menggunakan ekstensi file .php alih-alih ekstensi file .html standar. Gambar di bawah ini menunjukkan proses ini.
PHP adalah bahasa pemrograman interpreter; artinya untuk menjalankan programnya ia butuh sebuah interpreter engine di dalam web server. Berbeda dengan bahasa pemrograman seperti C,/C++ yang sifatnya terkompilasi, kode-kodenya diubah menjadi bahasa mesin sehingga eksekusinya langsung dari program itu sendiri.
Oleh karena itu, untuk menjalankan PHP dibutuhkan sebuah lingkungan pemrograman yang mendukungnya berupa web server. Untuk pengembangan lokal tersedia berbagai tools development environment seperti XAMPP, Laragon, LAMP, LEMP, dan sebagainya.
Baca juga: Untuk development environment, Laragon alternatif xampp terbaik di Windows
Menampilkan output
Ketika server PHP membaca kode dalam file yang dikirim server web, ia meneruskan kode HTML apa pun langsung ke browser klien yang meminta file dan memproses kode PHP apa pun yang tertanam dalam dokumen. Saat memproses kode PHP, programmer harus secara dinamis menampilkan konten ke halaman web. Cara menampilkan output dalam PHP menggunakan pernyataan echo.
Pernyataan echo menyuntikkan teks ke aliran data HTML yang dikirim ke browser klien. Data muncul ke browser klien seolah-olah berasal dari dokumen HTML – padahal server PHP yang secara dinamis menghasilkan konten tersebut.
Contoh penulisan statemen echo:
<?php
echo "Selamat datang di halaman web dinamis saya";
?>
Beberapa aturan dalam bahasa pemrograman berbasis web PHP
Ada beberapa aturan baku dalam penulisan kode PHP:
- Tidak case sensitive. Dalam penulisan kode tidak kewajiban tertentu dalam penggunaan huruf kapital atau huruf kecil. Hanya saja, sangat disarankan bahwa pada umumnya dalam penulisan fungsi kita menggunakan huruf kecil saja.
- Pada setiap akhir statemen, wajib diakhiri dengan tanda titik-koma atau semicolon (;) Apabila lupa menutup baris perintah dengan semicolon, maka akan mengakibatkan terjadinya error.
- Dalam penamaan variabel menggunakan simbol $ di depan nama variabel. Misalnya nama variabel adalah jumlah, maka penulisan dalam PHP menjadi $jumlah.
- Komentar satu baris menggunakan simbol // dan komentar blok menggunakan /* */
Mari kita membuat sebuah contoh penulisan bahasa pemrograman PHP. Karena PHP membutuhkan lingkungan pengembangan maka file-file PHP harus disimpan di lokasi tertentu dalam lingkungan server seperti Apache, Nginx, Litespeed, dan sebagainya. Dalam contoh ini saya akan menggunakan Laragon. Maka file PHP akan dilayani di direktori www dalam direktori lokasi instalasi Laragon.
Buat sebuah file dengan nama contoh.php menggunakan editor yang anda miliki, kemudian masukkan kode seperti berikut:
<!DOCTYPE html>
<html>
<body>
<h1>Contoh menggunakan PHP</h1>
<?php
echo "<h1>Selamat datang</h1>";
echo "<br>";
$nama = "Franklin";
echo $nama;
?>
</body>
</html>
Setelah disimpan, jalankan di browser, ketikkan alamat http://localhost/contoh.php. Apabila tidak ada aral melintang, maka tampilannya seperti ini:
Baca juga: Belajar bahasa pemrograman berbasis web – jQuery
Tipe Data PHP
PHP memiliki beberapa tipe data :
Tipe Data | Deskripsi |
---|---|
Integer | Menampung semua bilangan bulat |
Float | Menampung bilangan real |
Boolean | Bernilai true atau false |
String | Sekumpulan karakter |
Array | Menyimpan beberapa nilail dalam satu variabel |
Object | Menyimpan komponen dari class |
Reference | Menyimpan pointer dari sebuah tipe data yang kompleks |
Dalam PHP, satu variabel dapat menyimpan semua jenis data kapan saja (PHP tidak mengharuskan penulisan tipe data yang ketat). Mengubah tipe data yang disimpan dalam variabel bisa membingungkan, dan sangat disarankan untuk menempel dengan satu tipe data per nama variabel di program. Hal ini akan sangat membantu dalam proses kerja jangka panjang!
Contoh program tipedata.php:
<!DOCTYPE>
<html>
<head>
<title>Tipe data PHP</title>
</head>
<body>
<h1>Tipe data PHP</h1>
<?php
$name = "Franklin";
$umur = 12;
$nilai_rata_rata = 97.6;
echo "<h2>Informasi dasar $name</h2>\n";
echo "Umur: $umur<br>\n";
echo "Nilai rata-rata: $nilai_rata_rata\n";
?>
</body>
</html>
Mengelompokkan nilai data dengan menggunakan array
Variabel array memungkinkan kita mengelompokkan nilai data terkait bersama-sama dalam daftar menggunakan satu nama variabel. Kita kemudian dapat mereferensikan nilai secara keseluruhan dengan mereferensikan nama variabel atau menangani setiap nilai data secara individual dalam array dengan mereferensikan tempatnya dalam daftar. PHP mendukung dua jenis array: numerik dan asosiatif. Bagian berikut ini mencakup tipe array ini.
Numerik
Tipe variabel array standar adalah array numerik. Dengan array numerik, PHP mengindeks setiap nilai yang disimpan dalam array dengan nilai bilangan bulat, mulai dari 0 untuk item pertama dalam daftar array. Cara menentukan array adalah dengan menggunakan fungsi PHP array() dalam pendeklarasian
$nilai = array(100, 87, 64);
Kita juga bisa membuat array string seperti ini:
$anak = array("Marchellino", "Margaretha", "Julian", "Maura");
Sejak PHP versi 5.4 kita juga dapat mendefinisikan array dengan menggunakan bracket bujursangkar
$nilai = [100, 87, 64];
PHP mereferensikan setiap elemen di dalam array dengan menggunakan indeks yang dimulai dengan 0. Elemen pertama indeks-nya 0, elemen kedua indeksnya 1, dan seterusnya. Untuk mengambil isi dari sebuah larik/array gunakan indeks referensi tersebut
Contoh :
$anak = array("Marchellino", "Margaretha", "Julian", "Maura");
$sulung = $anak[0];
$kedua = $anak[1];
Assosiatif
Variabel array asosiatif mirip dengan apa yang disebut bahasa pemrograman lain sebagai “kamus.” Alih-alih menggunakan indeks numerik, ia menetapkan nilai kunci string ke nilai individual dalam daftar. Anda menggunakan operator penugasan => khusus untuk melakukannya saat Anda menentukan array:
$anak = array("pertama" => "Marchellino", "kedua" => "Margaretha", "ketiga" => "Julian", "keempat" => "Maura");
Untuk mengambil elemen
$sulung = $anak["pertama"];
Namun, ada satu hal yang perlu diperhatikan, ketika menggunakan variabel array asosiatif dalam kode PHP. Untuk beberapa alasan, pernyataan echo kesulitan mendeteksi variabel array asosiatif, sehingga perlu diakali.
Ketika menggunakan variabel array asosiatif dalam pernyataan echo, ada baiknya untuk mengapitnya dalam kurung kurawal, seperti ini:
echo "Anak bungsu saya adalah {$anak['keempat']}\n";
Ini memisahkan variabel array asosiatif dari string, sehingga pernyataan echo dapat memprosesnya dengan benar. Juga, perhatikan bahwa masalah dengan kutipan muncul ketika menggunakan variabel array asosiatif di dalam pernyataan echo. Karena kita ingin output menunjukkan nilai variabel array asosiatif, kita perlu menggunakan tanda kutip ganda untuk string pernyataan echo. Itu berarti kita harus menggunakan tanda kutip tunggal di sekitar tombol variabel array asosiatif.
Operator
Ada beberapa jenis operator di dalam bahasa pemrograman PHP
Operator Aritmatik
Operator | Deskripsi |
---|---|
+ | Penjumlahan |
– | Pengurangan |
* | Perkalian |
/ | Pembagian |
% | Modulo atau sisa hasil pembagian |
Operator aritmatika biasanya digunakan dalam pernyataan penugasan untuk melakukan perhitungan:
$nilai1 = 100;
$nilai2 = 450;
$hasil_kali = $nilai1 * nilai2;
echo "Hasil perkalian = " . $hasil_kali;
Shortcut Aritmatik
Ada beberapa pintasan berbeda yang dapat kita gunakan saat menerapkan operator aritmatika dalam kode PHP. Fungsi umum dalam kode pemrograman adalah melakukan operasi aritmatika pada nilai yang disimpan dalam variabel dan kemudian menyimpan hasilnya kembali dalam variabel yang sama, seperti ini:
$nilai = $nilai + 1;
Kode ini menambahkan 1 ke nilai yang saat ini disimpan dalam variabel $nilai dan kemudian menyimpan hasilnya kembali variabel $nilai. PHP menyediakan metode pintasan yang berguna untuk melakukan ini:
$nilai += 1;
$nilai *= 10.1;
$total *= $nilai;
Selain itu ada operator incrementor dan decrementor :
$nilai++; // Menambahkan variabel nilai dengan 1
$nilai--; // Mengurangi variabel nilai dengan 1
Operator Boolean
Selain operator aritmatika standar, PHP mendukung operator Boolean untuk operasi logis dengan data. Operator Boolean memungkinkan kita untuk bekerja dengan kondisi TRUE dan FALSE dalam program Anda. Operator Boolean menguji apakah dua nilai keduanya TRUE, baik FALSE, atau satu true dan yang lainnya adalah FALSE.
Operator Boolean | Deskripsi |
---|---|
and | Logika AND |
or | Logika OR |
&& | logika AND |
|| | Logika OR |
xor | Logika XOR |
! | Logika NOT |
Perhatikan bahwa PHP mendukung dua formulir untuk operasi logis AND dan OR — baik simbol maupun nama. Tidak ada preferensi metode mana yang digunakan, jadi jangan ragu untuk menggunakan metode yang paling nyaman bagi anda.
Operator ini berguna ketika kita perlu mengevaluasi dua kondisi terpisah pada saat yang sama:
if (($umur > 50) and ($jenis_kelamin == "L"))
Operator String
Tipe data string memiliki operator penggabungan untuk menggabungkan beberapa string menjadi satu, menggukanan operator tambah. Namun dalam string operator yang digunakan menggunakan simbol titik atau dot
$string1 = "Ini adalah ";
$string2 = " sebuah contoh";
$gabung_string = $string1.$string2;
Fungsi include()
Fungsi include() memungkinkan kita untuk menyertakan konten dari satu halaman web dalam halaman web lain hanya dengan merujuk nama file di server. Prosesor PHP mencakup semua kode yang terkandung dalam file yang disertakan, baik HTML dan PHP, langsung ke kode PHP file utama, persis di mana Anda menempatkan fungsi include(). Hanya saja seolah-olah kita telah menulis di semua baris kode dari file include sendiri ke dalam file utama!
Pengembang sering menggunakan fungsi include() untuk membuat bagian header atau footer standar pada semua halaman web dalam aplikasi. Alih-alih harus menambahkan kode header atau footer yang sama ke setiap halaman web dalam aplikasi, kita hanya menyimpan kode header dalam satu file dan kode footer dalam file lain, lalu menggunakan fungsi include() untuk menyertakan file header dan footer ke dalam setiap kode halaman web. Sehingga kode pada file utama kita “bersih”.
Cara penggunaan:
include(namafile);
Contohnya, buat sebuah file bernama tambahan.inc.php kemudian masukkan kode berikut:
<h1>Ini adalah File Tambahan</h1>
<?php
echo "<p>Isi dari file tambahan</p>\n";
?>
Kemudian buat file baru dengan nama fileutama.php dengan kode berikut:
<!DOCTYPE html>
<html>
<head>
<title>Latihan menggunakan include</title>
</head>
<body>
<header>
<?php include("tambahan.inc.php"); ?>
</header>
<section>
<br><br>
<h2>Ini adalah body halaman</h2>
</section>
</body>
</html>
Coba dijalankan di localhost, apabila ditulis dengan benar mestinya menghasilkan tampilan seperti berikut:
Fungsi require()
Ada satu batasan untuk fungsi include() yang dapat menyebabkan masalah dalam pengembangan aplikasi. Jika PHP tidak dapat menemukan file yang kita referensikan, itu akan menghasilkan peringatan, tetapi prosesor PHP akan terus memproses sisa kode program. Hal ini bisa menyebabkan dampak-dampak yang tidak kita inginkan.
Mungkin ada saat-saat di mana kita tidak ingin server PHP melanjutkan pemrosesan kode jika file include penting hilang dari server. Sebagai gantinya, kita mungkin ingin program segera dihentikan dan menghasilkan pesan kesalahan alih-alih hanya peringatan. Di sinilah fungsi require() dibutuhkan.
Fungsi require() berfungsi persis seperti fungsi include(), kecuali untuk satu perbedaan: Ini memaksa server PHP untuk menghentikan pemrosesan kode jika file include gagal dimuat.
Bersambung ke Chapter 7: Belajar bahasa pemrograman berbasis web – PHP (Bagian 2)