As’ad Djamalilleil http://kampusku.uni.me asad.kom@gmail.com Variabel & Konstanta As’ad Djamalilleil http://kampusku.uni.me asad.kom@gmail.com
Variabel Variabel ditulis dengan diawali oleh tanda dolar ($) dan diikuti dengan nama dari variabel Nama variabel bersifat case-sensitive
Syarat Pemberian Nama Nama variabel yang benar diawali oleh huruf atau underscore, diikuti dengan serangkaian huruf, angka atau underscore Yang dimaksud huruf disini adalah a-z, A-Z, dan karakter ASCII ke-127 s/d 255
$var = "Bob"; $Var = "Joe"; echo "$var, $Var"; output "Bob, Joe“ $4situs = 'belum pi '; salah, dimulai dengan angka $_4situs = 'belum pi'; benar, dimulai dengan underscore
Variabel Pointer/Reference Untuk membuat sebuah pointer, cukup menambahkan tanda ampersand (&) ke awal nama variabel yang ingin dibuat referensinya (variabel sumber) Contoh script berikut mencetak 2 kali string “Nama saya adalah Bob”
<?php $a = 'Bob'; memberikan nilai ‘Bob’ ke $a $p = &$a; membuat referensi $a lewat $p $p = "Nama saya adalah $p"; mengubah nilai $p echo $a; $a terubah juga nilainya echo $p; ?>
Predefined Variabel Apache Variabel ini dibuat oleh webserver Apache $GATEWAY_INTERFACE $SERVER_NAME $SERVER_SOFTWARE $SERVER_PROTOCOL $REQUEST_METHOD $QUERY_STRING
$DOCUMENT_ROOT $HTTP_ACCEPT $HTTP_ACCEPT_CHARSET $HTTP_ACCEPT_ENCODING $HTTP_ACCEPT_LANGUAGE $HTTP_CONNECTION $HTTP_HOST $HTTP_REFERER $HTTP_USER_AGENT $REMOTE_ADDR
$REMOTE_PORT $SCRIPT_FILENAME $SERVER_ADMIN $SERVER_PORT $SERVER_SIGNATURE $PATH_TRANSLATED $SCRIPT_NAME $REQUEST_URI
Predefined Variabel PHP Variabel yang dibuat oleh PHP $argv $argc $PHP_SELF $HTTP_COOKIE_VARS $HTTP_GET_VARS $HTTP_POST_VARS $HTTP_POST_FILES $HTTP_ENV_VARS $HTTP_SERVER_VARS
$HTTP_ENV_VARS $HTTP_SERVER_VARS
Scope/Cakupan Variabel Cakupan variabel adalah konteks dimana variabel tersebut didefinisi. Single scope meliputi file yang disertakan ke dalam PHP juga $a = 1; include "b.inc"; Variabel $a dikenali pula di dalam file script “b.inc”
Di dalam fungsi yang didefinisi oleh user terdapat scope local fungsi Di dalam fungsi yang didefinisi oleh user terdapat scope local fungsi. Variabel yang berada di dalam fungsi hanya dikenal di dalam fungsi tersebut saja $a = 1; //scope global function Coba() { echo $a; //scope local } Coba(); //panggil fungsi Coba
Pada PHP, variabel global harus dideklarasikan ber-scope global jika ingin digunakan di dalam fungsi $a = 1; //scope global function Coba() { global $a; //deklarasi echo $a; //scope global } Coba(); //panggil fungsi Coba
Variabel Static Variabel static adalah variabel yang memiliki scope local tetapi tidak kehilangan nilainya apabila keluar scope-nya
--- coba bandingkan --- function Coba () { $a = 0; //local echo $a; $a++; } --- coba bandingkan --- static $a = 0; //local
Variabel Variabel Variabel variabel adalah nama variabel yang dapat digunakan secara dinamis $a = "halo"; Variabel variabel mengambil nilai sebuah variabel dan diperlakukan sebagai nama variabel. “halo” di atas dapat dijadikan sebagai nama variabel dengan menggunakan 2 tanda dolar $$a = "dunia";
echo "$a ${$a}"; --- atau --- echo "$a $halo"; Kedua pernyataan di atas menghasilkan output yang sama, yaitu “halo dunia”
Konstanta Sebuah konstanta adalah sebuah identifier (nama) untuk menyimpan nilai yang sederhana, dimana nilai tersebut tidak dapat berubah selama script dijalankan Nama konstanta bersifat cese-sensitive Merupakan sebuah kesepakatan untuk memberikan huruf kapital kepada nama konstanta Scope konstanta bersifat global
Konstanta dapat didefinisi dengan menggunakan fungsi define() Konstanta dapat didefinisi dengan menggunakan fungsi define(). Sekali didefinisi, maka nilainya tidak dapat diubah atau dihilangkan Hanya data skalar (boolean, integer, double, string) dapat disimpan dalam konstanta
Perbedaan Konstanta & Variabel Konstanta tidak diawali dengan tanda dolar Konstanta dapat didefinisi dan diakses dimanapun tanpa mempedulikan aturan scope Konstanta tidak dapat didefinisi ulang atau dihilangkan Konstanta hanya berisi nilai skalar
<?php define("CONSTANT", "Halo dunia."); echo CONSTANT; // output: Halo dunia. ?>
Konstanta Predefined __FILE__ __LINE__ PHP_VERSION PHP_OS TRUE FALSE NULL E_ERROR
E_WARNING E_PARSE E_NOTICE E_ALL