Dibaca: 810

Cakupan Variabel PHP

Variabel dalam PHP dapat dideklarasikan dimana saja pada skrip.
Cakupan variabel pada skrip adalah dimana variabel tersebut dibuat.
Pada PHP variabel mempunyai 3 cakupan yaitu lokal, global, dan statik.

Variabel Lokal

Variabel yang dibuat di dalam sebuah fungsi secara otomatis hanya akan dikenal dalam fungsi tersebut dan tidak dikenal di luar fungsi. Variabel ini dinamakan lokal variabel atau variabel dengan cakupan lokal.

<?php
   function FungsiSatu() {
      //variabel lokal
      $a = 10; 
      echo "<p>Dalam FungsiSatu nilai variabel lokal a adalah $a</p>";
   }
FungsiSatu();
//penggunaan variabel lokal di luar fungsi //akan terjadi error karena variabel lokal tidak dikenal echo "<p>Nilai variabel lokal di luar fungsi adalah $a</p>"; ?>

Berikut adalah hasilnya bila file dibuka dengan browser.

variabel-lokal

Variabel Statik

Lokal variabel yang dibuat dalam fungsi akan dihapus begitu PHP selesai menjalankan fungsi tersebut. Dengan membuat statik sebuah variabel lokal maka variabel tersebut tidak dihapus datanya, tapi cakupan dari variabel tersebut tetap lokal.

<?php
   function FungsiTanpaStatik() {
      //variabel lokal
      $a = 10; 
      echo "Fungsi tanpa statik : $a<br>";  
      $a=$a+10;
   }
FungsiTanpaStatik(); FungsiTanpaStatik(); FungsiTanpaStatik(); echo '<br>'; function FungsiDgnStatik() { //variabel lokal statik static $a = 10; echo "Fungsi dengan statik : $a<br>"; $a=$a+10; }
FungsiDgnStatik(); FungsiDgnStatik(); FungsiDgnStatik(); ?>

Berikut adalah hasilnya bila file dibuka dengan browser.

variabel-statik

Variabel Global

Sedangkan variabel yang dibuat diluar fungsi dinamakan global variabel, tapi secara otomatis tidak dikenal di dalam fungsi. Bila sebuah fungsi ingin menggunakan variabel global maka harus menggunakan kata kunci global.

<?php
   //variabel global 
   $a = 10; 
   echo "<p>Variabel global a adalah $a</p>"; 
function FungsiSatu() { //penggunaan variabel global di dalam fungsi tanpa kata kunci global //akan terjadi error karena variabel global tidak dikenal echo "<p>Dalam FungsiSatu nilai variabel global a adalah $a</p>"; }
FungsiSatu(); ?>

Berikut adalah hasilnya bila file dibuka dengan browser.

variabel-global