43. Variable Scope
Variable Scope :
- Di PHP, Kita Bisa Membuat Variable Dimanapun Yang Kita Mau
- Variable Scope Adalah Dibagian Mana Saja Sebuah Variable Bisa Diakses
- PHP Memiliki Tiga Jenis Variable Scope :
1. Global
2. Local
3. Static
Global Scope - Tidak Rekomendasikan :
- Variable Yang Dibuat Diluar function Memiliki Scope Global
- Variable Scope Global Hanya Bisa Diakses Dari luar function
- Artinya Di Dalam function, Kita Tidak Bisa Mengakses Variable Di Global Scope
Contoh Kodingannya :
$name = "Eko";
function sayName() {
echo $name;
}
sayName();
Output :
ERROR
Local Scope - Tidak Rekomendasikan :
- Variable Yang Dibuat Di Dalam function Memiliki Scope Local
- Variable Scope Local Hanya Bisa Diakses Dari Dalam function Itu Sendiri
- Artinya Variable Tersebut Tidak Bisa Mengakses Dari Luar function Ataupun Dari function Lain
Contoh Kodingannya :
function createName() {
$names = "Eko";
}
createName();
echo $name;
Output :
Undefined
Global Keyword :
- Namun Jika Kita Ingin Mengakses Variable Diluar function (Global Scope) Dari Dalam function,
Kita Bisa Menggunakan Kata Kunci Global
- Dengan Menggunakan Kata Kunci Global, Maka Kita Bisa Mengakses Variable
Yang Ada Di Global Scope Dari Dalam function
Contoh Kodingannya :
$kota = "Jakarta Timur";
function tinggal() {
echo $GLOBALS["kota"] . PHP_EOL;
}
tinggal();
Output
Jakarta Timur
Static Scope :
- Secara Default, Local Variable Itu Siklus Hidupnya Hanya Sebatas function Nya Dieksekusi
- Jika Sebuah function Selesai Dieksekusi, Maka Siklus Hidup Local Variablenya Selesai
- PHP Memiliki Scope Bernama Static
- Static Scope Hanya Bisa Di Set Ke Local Variable
- Saat Kita Membuat Sebuah Local Variable Menjadi Static, Maka Siklus Hidupnya Tidak Akan Berhenti
Ketika Sebuah function Selesai Dieksekusi
- Artinya Jika function Tersebut Dieksekusi Lagi, Maka Static Variable Tersebut Akan Memiliki Value
Dari Sebelumnya
Contoh Kodingannya :
function increment() {
static $counter = 1;
echo "Counter : $counter" . PHP_EOL;
$counter++;
}
increment();
increment();
increment();
increment();
increment();
increment();
increment();

Belum ada Komentar untuk "43. Variable Scope"
Posting Komentar