Materi PHP,PHP,Materi PHP,PHP

Variabel Statis di PHP

Berjumpa lagi kita di pembahasan mengenai PHP, setelah kemarin kita telah membahas mengenai Variabel Referensi di PHP, kali ini kita akan lanjutkan pembahasan masih mengenai jenis variabel di PHP, yaitu variabel statis, pada normalnya, setiap variabel lokal di dalam fungsi (termasuk variabel yang berperan sebagai parameter) akan dibuang dari memori komputer saat eksekusi kode keluar dari fungsi (). Untuk menjadikan variabel tersebut tetap ada di memori computer, maka kita perlu menjadikannya sebagai variabel statis, variabel statis ini dibuat menggunakan kata kunci static di depan Namanya, seperti berikut :

Static

Variabel statis akan menyimpan nilai terkahir yang diisi oleh fungsi. dari pada kalian binggung coba perhatikan contoh berikut :


<?php
#
# Variabel tidak Statis by SmartDevTala
#

function increment(){
 $count=0;
 $count++;
 return $count;
}

#pemanggilan increment pertama
echo "Pemanggilan fungsi increment() pertama : \n";
echo "Nilanya adalah : ".increment()."\n\n";
#pemanggilan increment pertama
echo "Pemanggilan fungsi increment() kedua : \n";
echo "Nilanya adalah : ".increment()."\n\n";
#pemanggilan increment pertama
echo "Pemanggilan fungsi increment() ketiga : \n";
echo "Nilanya adalah : ".increment()."\n\n";

?>

 

Dan hasilnya adalah sebagai berikut :

Kalian bisa lihat pada hasil di atas bahwa setiap kita melakukan pemanggilan fungsi increment() nilai variabel $count akan dikembalikan lagi menjadi 0, baru kemudian ditambah satu. Dengan demikian, berapapun banyak pemanggilan terhadap fungsi increment(), semuanya akan mencetak nilai 1.

Nah untuk mengatasi hal tersebut, maka kita memerlukan variabel statis di dalam fungsi increment, dan jika kita terapkan akan menjadi seperti berikut :


<?php
#
# Variabel Statis by SmartDevTala
#

function increment(){
 static $count=0;
 $count++;
 return $count;
}

#pemanggilan increment pertama
echo "Pemanggilan fungsi increment() pertama : \n";
echo "Nilanya adalah : ".increment()."\n\n";
#pemanggilan increment pertama
echo "Pemanggilan fungsi increment() kedua : \n";
echo "Nilanya adalah : ".increment()."\n\n";
#pemanggilan increment pertama
echo "Pemanggilan fungsi increment() ketiga : \n";
echo "Nilanya adalah : ".increment()."\n\n";

?>

 

Sehingga akan menjadi seperti berikut :

Nah bagaimana terdapat perbedaankan di antara 2 (dua) contoh di atas?, jadi ketika kita menetapkan variabel $count sebagai variabel statis, maka ketika kita melakukan pemanggilan terhadap fungsi increment() nilai dari variabel $count tidak lagi dikembalikan ke 0, dan malah akan dilanjutkan sesuai dengan berapa pemanggilan yang kita inginkan.

Demikian pembahasan kita kali ini mengenai variabel statis di PHP, semoga teman-teman dapat memahami dan bermanfaat bagi kita semua. Terima kasih.

 

Nasrullah Siddik (Administrator)

Pada akhirnya kualitas dapat mengalahkan kuantitas

Artikel Sejenis