PHP ตัวแปร static คือตัวแปรที่สามารถเก็บรักษาค่าข้อมูลไว้ได้หลังการทำงานของฟังก์ชันจบลง โดยปกติตัวแปรในฟังก์ชันเมื่อทำงานจบแล้วค่าของตัวแปรจะกลับเป็นค่าเริ่มต้น สามารถเขียนโปรแกรมได้ดังนี้
ตัวอย่าง PHP ตัวแปร static คืออะไร มีประโยชน์อย่างไร
<?php
function test() {
static $a = 0;
$a++;
return "ตัวแปร a เท่ากับ ".$a;
}
echo test();
echo "<br/>";
echo test();
echo "<br/>";
echo test();
?>
ผลลัพธ์
ตัวแปร a เท่ากับ 1
ตัวแปร a เท่ากับ 2
ตัวแปร a เท่ากับ 3
PHP ตัวแปร static จากตัวอย่างในฟังก์ชัน test สร้างตัวแปร a แบบ static ค่าเริ่มต้นคือ 0 จากนั้นให้บวกค่าเพิ่ม 1 ด้วย a++ และ return ค่าออกจากฟังก์ชัน โดยโค้ดนี้มีการเรียกใช้ฟังก์ชัน test ทั้งหมด 3 ครั้งได้ผลลัพธ์ a = 1, 2 และ 3 แสดงให้เห็นว่าตัวแปร static มีการรักษาค่าของตัวแปรไว้ถึงแม้ว่าการทำงานของฟังก์ชันแต่ละรอบจะจบลงก็ตาม กรณีไม่ได้ใช้ static ผลลัพธ์จะได้ a = 1 ทั้ง 3 รอบเพราะตัวแปร a จะไม่มีการรักษาค่าของตัวแปรไว้หลังฟังก์ชันทำงานจบ