Sunday, June 14, 2009

Fungsi dan Prosedur

Fungsi dan Prosedur

 

Keberadaan  fungsi/prosedur  sangat  membantu  dalam  mengorganisir  kode program dan menerapkan aspek guna ulang. Di PHP, pembuatan  fungsi dan prosedur  menggunakan  sintaks  sama,  di  mana  yang  membedakan  hanya pengembalian nilai.

Ø Definisi Fungsi/Prosedur

Contoh  definisi  fungsi  dan  prosedur  beserta  cara  pemanggilannya diperlihatkan sebagai berikut:

<?php

// Contoh prosedur

function do_print() {

  // Mencetak informasi timestamp

  echo time();

}

 // Memanggil prosedur

do_print();

 echo '<br />'; 

// Contoh fungsi penjumlahan

function jumlah($a, $b) {

  return ($a + $b);

echo jumlah(2, 3);

// Output: 5

?>

 

Ø Argumen Fungsi/Prosedur

Suatu fungsi dapat memiliki nol atau lebih argumen. Adapun jika diperlukan, juga  bisa  dideklarasikan  argumen  yang  sifatnya  opsional.  Deklarasi  ini sekaligus  menginisialisasi  nilai  default  pada  argumen.  Selain  itu,  argumen opsional harus diletakkan di urutan paling belakang.

<?php 

/**

 * Mencetak string

 * $teks nilai string

 * $bold adalah argumen opsional

 */

function print_teks($teks, $bold = true) {

  echo $bold ? '<b>' .$teks. '</b>' : $teks;

}

 print_teks('Indonesiaku');

// Mencetak dengan huruf tebal

 print_teks('Indonesiaku', false);

// Mencetak dengan huruf reguler

?>

 

Saturday, June 13, 2009

Pengulangan

Pengulangan

 

Bagian  ini  akan menguraikan  jenis-jenis  dan  implementasi  struktur  kontrol perulangan. Ada beberapa pengulangan diantaranya yaitu:

Ø Pengulangan while

Pada pernyataan ini, ekspresi akan dievaluasi dan pengulangan dieksekusi jika dan hanya jika ekspresi bernilai true.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Loop while</title>

</head>

<body> 

<?php

$i = 0; 

while ($i < 10) {

  echo $i; 

  // Inkremen counter

  $i++;

?> 

</body>

</html>

 

Ø Pengulangan do-while

Bentuk  pengulangan  ini  mirip  dengan  while,  kecuali  bahwa  ekspresi pengontrolan  pengulangan  dilakukan  di  akhir  blok.  Ini  juga  berarti  bahwa blok  pengulangan  akan  dieksekusi  sedikitnya  satu  kali,  meskipun  ekspresi bernilai false.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Loop do-while</title>

</head>

<body> 

<?php 

$i = 0; 

do {

  echo $i; 

  // Inkremen counter

  $i++;

} while ($i < 10); 

?> 

</body>

</html>

 

Ø Pengulangan for

Pernyataan  pengulangan  ini  paling  banyak  digunakan  di  dalam  program, khususnya ketika jumlah iterasinya sudah diketahui. Struktur pengulangan for terdiri dari tiga bagian: ekspresi inisialisasi, kondisi perulangan, dan ekspresi inkremen.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Loop for</title>

</head>

<body>

<?php

for ($i = 0; $i < 10; $i++) {

  echo $i;

}

?>

</body>

</html>

 

Ø Pengulangan foreach

Sebagai  tambahan,  PHP  juga  menyediakan  konstruksi  foreach  yang  dapat digunakan untuk melakukan iterasi di array atau koleksi.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Loop foreach</title>

</head>

<body>

<?php

$arr = array(1, 2, 3, 4);

foreach ($arr as $value) {

  echo $value;

}

?>

</body>

</html>

Friday, June 12, 2009

Pernyataan Seleksi

Pernyataan Seleksi

 

Pernyataan  seleksi  untuk  pengambilan  keputusan  merupakan  bagian  dari bahasa  pemrograman  yang  sangat  penting.  Pernyataan-pernyataan pengambilan keputusan di PHP diklasifikasikan ke dalam empat bagian: if, if-else, if-elseif, dan switch.

Ø Pernyataan if

Pernyataan  if  terdiri  dari  suatu  ekspresi  dan  sebuah  statemen  atau  blok statemen yang dieksekusi apabila ekspresi bernilai true.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Seleksi</title>

</head>

<body>

<?php

$a = 10;

$b = 5;

if ($a > $b) {

   echo 'a lebih besar dari b';

}

?>

</body>

</html>

 

Ø Pernyataan if-else

Pernyataan  ini  sebenarnya merupakan  ekspansi  dari  pernyataan  if. Di  sini blok pertama akan dieksekusi manakala ekspresi bernilai true, sebaliknya jika ekspresi bernilai false blok kedua yang dieksekusi.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Seleksi if-else</title>

</head>

<body>

<?php

$a = 10;

$b = 5;

if ($a > $b) {

   echo 'a lebih besar dari b';

} else {

   echo 'a TIDAK lebih besar dari b';

}

?>

</body>

</html>

 

Ø Pernyataan if-elseif

Pernyataan  ini  sebenarnya  merupakan  ekspansi  dari  if-else,  di  mana  ditambahkan  lagi  blok  if-elseif.  Bentuk  pernyataan  if-elseif memungkinkan kita untuk menciptakan seleksi yang lebih kompleks.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Seleksi if-elseif</title>

</head>

<body>

<?php

$a = 10;

$b = 5;

if ($a > $b) {

   echo 'a lebih besar dari b';

} elseif ($a == $b) {

   echo 'a sama dengan b';

} else {

   echo 'a kurang dari b';

}

?>

</body>

</html>

 

Ø Pernyataan switch

Pernyataan switch merupakan sebuah pernyataan control  flow yang dimulai dengan suatu ekspresi dan mentransfer kontrol ke satu kasus berdasarkan nilai ekspresi.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Seleksi switch</title>

</head>

<body>

<?php

$i = 0;

if ($i == 0) {

   echo "i equals 0";

} elseif ($i == 1) {

   echo "i equals 1";

} elseif ($i == 2) {

   echo "i equals 2";

}

// Ekuivalen, dengan pendekatan switch

switch ($i) {

case 0:

   echo "i equals 0";

   break;

case 1:

   echo "i equals 1";

   break;

case 2:

   echo "i equals 2";

   break;

}

?>

</body>

</html>

 

Thursday, June 11, 2009

Tipe Data dan Casting

Tipe Data dan Casting

PHP  menyediakan  fungsi-fungsi  berawalan  is_  yang  dapat  dimanfaatkan untuk menguji tipe data suatu variabel.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Cek Tipe</title>

</head>

<body>

<?php

$bil = 3;

var_dump(is_int($bil));

// Output: bool(true)

$var = "";

var_dump(is_string($var));

// Output: bool(true)

?>

</body>

</html>

Kecuali  fungsi  is_bool(),  penamaan  fungsi-fungsi  lainnya  persis  seperti tipe data terkait, misalnya is_integer(), is_float(), is_object(), dan is_null().

Casting

Untuk menguji  aplikasi web,  kita mempublikasikannya  ke web  server,  baik secara lokal maupun Internet. Lingkungan lokal tentu merupakan pilihan yang efisien, khususnya ketika aplikasi masih dalam tahap pengembangan.

Operator 

Deskripsi

(int), (integer) 

Casting ke integer

(double), (float), (real) 

Casting ke floating point

(string) 

Casting ke string

(array) 

Casting ke array

(object) 

Casting ke object

(bool), (boolean) 

Casting ke boolean

(unset) 

Casting ke null, seperti pemanggilan unset

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Casting Tipe</title>

</head>

<body>

<?php

$str = '123abc';

// Casting nilai vaiabel $str ke integer

$bil = (int) $str;  // $bil = 123

echo gettype($str);

// Output: string

echo gettype($bil);

// Output: integer

?>

</body>

</html>

 

Wednesday, June 10, 2009

Variabel pada PHP

Variabel pada PHP

Sebagaimana diketahui, variabel diidentifikasikan melalui karakter dollar  ($) dan diikuti nama variabel. PHP mengizinkan kita untuk mendeklarasikan dan meng-assign suatu nilai sekaligus pada saat variabel akan digunakan. Coba lihat code berikut:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Demo Variabel</title>

</head>

<body>

<?php

// Deklarasi dan inisialisasi

$bil = 3;

echo $bil;

?>

</body>

</html>

Pada  tahap  pengembangan,  kita  bisa memanfaatkan  fungsi  var_dump()  atau print_r() untuk memudahkan pemeriksaan variabel.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Demo Variabel</title>

</head>

<body>

<?php

// Deklarasi dan inisialisasi

$bil = 3;

// Dumping informasi mengenai variabel

var_dump($bil);

print_r($bil);

?>

</body>

</html>

Nah… sekarang tugas kalian coba amati  dan  pahami  hasil  keluaran  dari  fungsi  var_dump().  Apa  bedanya var_dump() dengan konstruksi bahasa echo? Sangat mudah kok, pasti kawan sudah pada bisa kalau sudah dipraktikkan.

Sekarang apabila  Anda  ingin  memeriksa  apakah  suatu  variabel  di-set  atau  tidak, gunakan  konstruksi  bahasa  isset().  Konstruksi  bahasa  ini  juga  dapat digunakan untuk memeriksa beberapa variabel sekaligus.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>

  <title>Demo Variabel</title>

</head>

<body>

<?php

$bil = 3;

var_dump($bil);

// Output: int(3)

$var = "";

var_dump($var);

// Output: string(0) ""

$var = null;

var_dump($var);

// Output: NULL

?>

</body>

</html>