Dalam PHP, variabel dapat dideklarasikan di mana saja dalam skrip.
Variabel dalam bahasa pemrograman PHP memiliki ruang lingkup yang menunjukkan di mana variabel tersebut dapat diakses dan digunakan. Lingkup variabel PHP dapat dibagi menjadi tiga jenis, yaitu:
- Global
- Lokal
- Static
Lingkup Global dan Lokal
Variabel global dapat diakses dari mana saja dalam script PHP, baik di dalam maupun di luar fungsi. Variabel global harus didefinisikan di luar fungsi atau class dan dapat diakses di seluruh bagian dari script.
Contoh
Variabel dengan lingkup global:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5; // lingkup global
function myTest() {
// menggunakan x di dalam function ini akan menghasilkan error
echo "<p>Variabel x di dalam function adalah: $x</p>";
}
myTest();
echo "<p>Variabel x di luar function adalah: $x</p>";
?>
</body>
</html>
Variabel lokal hanya dapat diakses di dalam fungsi atau blok kode di mana variabel itu didefinisikan. Setelah fungsi atau blok kode selesai dieksekusi, variabel lokal tidak lagi tersedia untuk digunakan.
Contoh
Variabel dengan lingkup lokal:
<!DOCTYPE html>
<html>
<body>
<?php
function myTest() {
$x = 5; // lingkup lokal
echo "<p>Variabel x di dalam function adalah: $x</p>";
}
myTest();
// menggunakan x di luar function akan menghasilkan error
echo "<p>Variabel x di luar function adalah: $x</p>";
?>
</body>
</html>
Anda dapat memiliki variabel lokal dengan nama yang sama dalam fungsi yang berbeda, karena variabel lokal hanya dikenali oleh fungsi yang dideklarasikan.
Kata Kunci global
Kata kunci global digunakan untuk mengakses variabel global dari dalam suatu fungsi.
Untuk melakukannya, gunakan kata kunci global sebelum variabel (di dalam fungsi):
Contoh
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5;
$y = 10;
function myTest() {
global $x, $y;
$y = $x + $y;
}
myTest(); // jalankan function
echo $y; // tampilkan nilai baru untuk variabel $y
?>
</body>
</html>
PHP juga menyimpan semua variabel global dalam array yang disebut $GLOBALS[index]. index menyimpan nama variabel. Array ini juga dapat diakses dari dalam fungsi dan dapat digunakan untuk memperbarui variabel global secara langsung.
Contoh di atas dapat ditulis ulang seperti ini:
Contoh
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5;
$y = 10;
function myTest() {
$GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];
}
myTest();
echo $y;
?>
</body>
</html>
Keyword static
Variabel static mirip dengan variabel lokal, namun nilainya tetap selama kode dijalankan. Variabel static didefinisikan di dalam fungsi dengan kata kunci static.
Contoh
<!DOCTYPE html>
<html>
<body>
<?php
function myTest() {
static $x = 0;
echo $x;
$x++;
}
myTest();
echo "<br>";
myTest();
echo "<br>";
myTest();
?>
</body>
</html>
Kemudian, setiap kali fungsi dipanggil, variabel tersebut akan tetap memiliki informasi yang sama sejak terakhir kali fungsi dipanggil.
Catatan: Variabel static bersifat lokal untuk fungsi.
Tutorial sebelumnya : Variabel PHP
Tutorial setelahnya : PHP Echo Dan PHP Print
Semua Tutorial PHP : Tutorial PHP