Variabel Variabels dengan PHP (fungsi dan class)


Dengan PHP kita bisa mengambil sebuah nilai atau mengisi nilai pada sebuah variabel yang ditandai dengan dollar($), simbol ini merupakan simbol variabel dalam PHP. Selain melakukan 2 hal diatas, kita juga bisa membuat sebuah variabel dari sebuah nilai yang ada pada variabel, artinya jika var bernilai satu, var adalah variabel dan satu adalah nilai, dan jika kita memanggil variabel var maka yang keluar adalah **satu. **Dengan Variabel Variabels nya PHP kita bisa membuat sebuah variabel yang bernama satu dengan nilai yang bisa kita tentukan sendiri.

Berikut Penjelasannya.

  • $var = “satu” ;
    Mengisi nilai variabel $var dengan string “satu”.

  • echo $var ;
    Output: satu

  • $$var = 1 ;
    membuat sebuah variabel yaitu satu dengan nilai integer 1.

  • echo $satu;
    Output: 1

Hal ini bermanfat ketika ingin melakukan asosiasi sebuah variabel secara langsung ataupun ingin mengambil nilai variabel yang telah ditentukan namanya.

Perintah ini juga bisa dilakukan untuk variabel GLOBAL seperti $_GET atau $_POST, misalkan kita ingin mengambil nilai variabel $_POST, bisa dengan cara berikut

$p = "_POST";  
$nilai = $$p  

Dengan kode diatas kita telah mengcopy nilai $_POST ke $nilai.

Namun ketika saya coba melakukannya, dari dalam sebuah fungsi dan class, hal ini menghasilkan NULL, ini contoh kode yang saya gunakan.

function fn(){  
  $x = "_POST";  
  $z = $$x;  
  return $z;  
}  

echo "dari fungsi  
";  
var_dump( fn());  

echo "  
manual  
";  
$x='_POST';  
var_dump( $$x)  

?>  


Submit  

dan ini Outputnya..

Saya sendiri ga tau kenapa, udah nyari-nyari tapi tetap ga nemu, satu-satunya jalan adalah berusaha menghindari pemakaian kode seperti tersebut, jika ingin membuat variable dari nilai sebuah variable.