Quite possibly one of PHP’s least utilized yet most valuable features is its support for Variable Variables. In short these are a method of using the value of one variable to call the name of another. Sound confusing? We'll explain everything...
A great yet widely unused element of variable variables is their ability to be employed with functions. The function name can be set within a variable and then run through calling the variable variable of that variable. Here’s an example:
$function1 = "sort_stuff";
${$function1()};
#this sets the result of the sort_stuff() function into a variable
${$function1($var1, $var2, $var3)};
#this does the same thing but sends the function parameters
Here’s a quick example of this in action, building on the
same program segment I had introduced variable variables with:
as the echo statement is printing the value of the
variable that gets created from the resultant of the value() function, "Eric". As we have already set $$x (which, following the variable variable, is the same as $Eric) to "Seufert", the same value is outputted, only this time resulting from a function call.