Pemrograman Berbasis Web Pertemuan 8 – Dasar Pemrograman PHP II
Program Diploma IPB - Aditya Wicaksono, SKomp
1
Apa itu Array ?
Program Diploma IPB - Aditya Wicaksono, SKomp
Variabel khusus yang dapat menampung beberapa nilai dalam satu variable tunggal
2
Bagaimana jika ingin loop variabel cars dan menemukan satu yang spesifik ? Bagaimana jika datanya bukan 3 mobil, tapi 300 ?
Analogi Array
$cars1 = "Volvo"; $cars2 = "BMW"; $cars3 = "Toyota";
SOLUSINYA …
ARRAY Sebuah array dapat menyimpan banyak nilai dibawah satu nama, dan nilai tersebut dapat diakses dengan mengacu pada nomor indeks
Program Diploma IPB - Aditya Wicaksono, SKomp
3
Contoh Array
Program Diploma IPB - Aditya Wicaksono, SKomp
4
Jenis Array
Indexed Arrays Associative Arrays Multidimensional Arrays
Program Diploma IPB - Aditya Wicaksono, SKomp
5
Indexed Arrays
Program Diploma IPB - Aditya Wicaksono, SKomp
Array dengan indeks numerik
6
Indexed Arrays
Otomatis $cars = array("Volvo", "BMW", "Toyota");
Manual $cars[0] = "Volvo"; $cars[1] = "BMW"; $cars[2] = "Toyota";
Program Diploma IPB - Aditya Wicaksono, SKomp
7
count()
Program Diploma IPB - Aditya Wicaksono, SKomp
Digunakan untuk mengembalikan panjang (jumlah elemen) dari sebuah array
8
Loop dengan Indexed Arrays
"; } ?>
Program Diploma IPB - Aditya Wicaksono, SKomp
9
Associative Arrays
Program Diploma IPB - Aditya Wicaksono, SKomp
Array dengan indeks bernama
10
Associative Arrays
Cara 1 $age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
Cara 2 $age['Peter'] = "35"; $age['Ben'] = "37"; $age['Joe'] = "43";
Program Diploma IPB - Aditya Wicaksono, SKomp
11
Loop dengan Associative Arrays
"35", "Ben" => "37", "Joe" => "43"); foreach($age as $x => $x_value) { echo "Key = " . $x . ", Value = " . $x_value; echo "
"; } ?>
Program Diploma IPB - Aditya Wicaksono, SKomp
12
Multidimensional Arrays
Program Diploma IPB - Aditya Wicaksono, SKomp
Array yang berisi satu atau lebih array
13
Multidimensional Arrays $families = array ( "Griffin" => array ( "Peter", "Lois", "Megan" ), "Quagmire" => array ( "Glenn" ), "Brown" => array ( "Cleveland", "Loretta", "Junior" ) ); Program Diploma IPB - Aditya Wicaksono, SKomp
14
sort()
Program Diploma IPB - Aditya Wicaksono, SKomp
Mengurutkan array dalam urutan menaik (Asc)
15
rsort()
Program Diploma IPB - Aditya Wicaksono, SKomp
Mengurutkan array dalam urutan menurun (Desc)
16
asort()
"35", "Ben" => "37", "Joe" => "43"); asort($age); ?>
Program Diploma IPB - Aditya Wicaksono, SKomp
Mengurutkan assosiatif array dalam urutan menaik (Asc) berdasarkan value
17
arsort()
"35", "Ben" => "37", "Joe" => "43"); arsort($age); ?>
Program Diploma IPB - Aditya Wicaksono, SKomp
Mengurutkan assosiatif array dalam urutan menurun (Desc) berdasarkan value
18
ksort()
"35", "Ben" => "37", "Joe" => "43"); ksort($age); ?>
Program Diploma IPB - Aditya Wicaksono, SKomp
Mengurutkan assosiatif array dalam urutan menaik (Asc) berdasarkan key
19
krsort()
"35", "Ben" => "37", "Joe" => "43"); krsort($age); ?>
Program Diploma IPB - Aditya Wicaksono, SKomp
Mengurutkan assosiatif array dalam urutan menurun (Desc) berdasarkan key
20
Fungsi
function functionName() { code to be executed; }
Program Diploma IPB - Aditya Wicaksono, SKomp
21
Fungsi Selain built-in fungsi PHP, kita dapat membuat fungsi kita sendiri
Fungsi adalah sebuah blok pernyataan yang dapat digunakan berulangkali dalam sebuah program Sebuah fungsi tidak akan dieksekusi langsung ketika halaman dipanggil Sebuah fungsi akan dieksekusi dengan pemanggilan fungsi
Nama fungsi dapat dimulai dengan huruf atau garis bawah (bukan angka) Berikan nama fungsi yang mencerminkan apa yang dilakukan fungsi tersebut Nama fungsi case-insensitive
Program Diploma IPB - Aditya Wicaksono, SKomp
22
Contoh Fungsi Program Diploma IPB - Aditya Wicaksono, SKomp
23
Fungsi dengan Parameter "; } echo "My name is "; writeName("Kai Jim"); echo "My sister's name is "; writeName("Hege"); echo "My brother's name is "; writeName("Stale"); ?>
Informasi dapat dikirimkan ke fungsi melalui argumen
Program Diploma IPB - Aditya Wicaksono, SKomp
24
Fungsi dengan Parameter Default "; } setHeight(350); setHeight(); // will use the default value of 50 setHeight(135); setHeight(80); ?>
Program Diploma IPB - Aditya Wicaksono, SKomp
25
Fungsi dengan Return Value Program Diploma IPB - Aditya Wicaksono, SKomp
26
Variabel Superglobal
Superglobal diperkenalkan di PHP 4.1.0 Built-in variable selalu tersedia di semua scope Beberapa variabel yang telah ditetapkan dalam PHP adalah superglobal, yang berarti bahwa mereka selalu dapat diakses, terlepas dari scope, dan dapat diakses dari semua fungsi, class, atau file tanpa harus melakukan sesuai yang khusus
Program Diploma IPB - Aditya Wicaksono, SKomp
27
Variabel Superglobal $GLOBALS
$_ENV $_REQUEST Mengumpulkan data setelah form HTML di submit
$_POST Mengumpulkan data setelah form HTML di submit dengan metode POST
$_GET Mengumpulkan data setelah form HTML di submit dengan metode GET
Program Diploma IPB - Aditya Wicaksono, SKomp
$_SERVER Menyimpan informasi tentang headers, paths, dan lokasi script
$_FILES Menyimpan informasi file upload dari computer client ke remote server
$_COOKIE Menyimpan informasi pada client (browser)
$_SESSION Menyimpan informasi pada server
28
GET vs POST Keduanya membuat sebuah array. Array ini memegang pasangan kunci / nilai, dimana kunci adalah nama-nama bentuk kontrol dan nilai-nilai data input dari user. Keduanya merupakan superglobals, yang berarti bahwa keduanya selalu dapat diakses, terlepas dari scope, dan keduanya dapat diakses dari semua fungsi, class, atau file tanpa harus melakukan sesuatu yang khusus. $_GET merupakan array dari variabel yang dilewatkan ke sebuah script melalui parameter URL. $_POST merupakan array dari variabel yang dilewatkan ke sebuah script melalui metode HTTP POST.
Program Diploma IPB - Aditya Wicaksono, SKomp
29
Kapan menggunakan GET
Informasi yang dikirim dari form dengan metode GET terlihat oleh semua orang (semua nama variabel dan nilai-nilai ditampilkan dalam URL) GET memiliki batasan pada jumlah informasi yang dikirim (2000 karakter)
GET dapat digunakan untuk mengirimkan data non sensitif
Program Diploma IPB - Aditya Wicaksono, SKomp
30
$_GET Index.php
Program Diploma IPB - Aditya Wicaksono, SKomp
Welcome.php Welcome .
You are years old!
31
http://localhost/welcome.php? fname=Vicky&age=29
$_GET Url
Program Diploma IPB - Aditya Wicaksono, SKomp
32
Kapan menggunakan POST
Informasi yang dikirim dari form dengan metode POST tidak terlihat oleh orang lain (semua nama/nilai tertanam dalam body HTTP request) Tidak memiliki batasan pada jumlah informasi yang dikirim Mendukung fungsi canggih seperti dukungan untuk masukkan multi-part binary ketika mengupload file ke server
Program Diploma IPB - Aditya Wicaksono, SKomp
33
$_POST Index.php
Program Diploma IPB - Aditya Wicaksono, SKomp
Welcome.php Welcome .
You are years old!
34
http://localhost/welcome.php
$_POST Url
Program Diploma IPB - Aditya Wicaksono, SKomp
35
date()
Digunakan untuk memformat waktu dan/atau tanggal
date(format,timestamp)
Parameter format digunakan untuk menentukan bagaimana format tanggal/waktu agar tanggal dan waktu lebih mudah dibaca Parameter timestamp merupakan rangkaian karakter, yang menunjukkan tanggal dan/atau waktu
Program Diploma IPB - Aditya Wicaksono, SKomp
36
Contoh date()
"; echo date("Y.m.d") . "
"; echo date("Y-m-d"); ?>
Program Diploma IPB - Aditya Wicaksono, SKomp
d – Merepresentasikan tanggal dalam suatu bulan (01 sampai 31) m – Merepresentasikan bulan (01 sampai 12) Y – Merepresentasikan tahun (dalam 4 digit)
37
include & require statement
include 'filename'; or
require 'filename';
Program Diploma IPB - Aditya Wicaksono, SKomp
38
require akan menghasilkan fatal error (E_COMPILE_ERROR) dan menghentikan script
Apa perbedaan include & require ?
Program Diploma IPB - Aditya Wicaksono, SKomp
include akan menghasilkan warning (E_WARNING) dan script akan dilanjutkan
39
Terima Kasih
Program Diploma IPB - Aditya Wicaksono, SKomp
40