PHP Questions Home

Categories

Arrays
Files
Forms
Functions
Images
MySQL
Numbers
Others
Strings
Website


PHP Functions

PHP Functions


More PHP

Top Questions
Ask a Question

How do I get a variable in a function to retain its value between calls?


The key here is to use the static keyword in your function declaration, so for instance:

<?php
function myfunc() { static $myfunctionvariable 1
echo 
"the number $myfunctionvariable\n";
$myfunctionvariable++;
}
myfunc(); //1
myfunc();//2
myfunc();//3
?>


The use of the static keyword means that it will only be assigned the value 1 once, so each time the function is called the number will increment by one. If you do not use the static keyword, each time the function is called the variable will be set back to 1 each time.

Copy the code and try calling the function a few times both with and without the static keyword to see the effect it has.




More functions PHP Questions

What is a function?
What is a static variable within a function?
How do I make a variable from outside a function work in that function?
How do I return a value from a function?