PHP Variable Variables

by Dillon -

Understanding PHP Variable Variables

In PHP, it is sometimes necessary to have variables that have variable names. Traditionally, a variable is given a name and a value is given to the variable like so:

$foo = 'bar';

A Variable Variable, or Double Dollar Variable, gets its name from the value of another variable like so:

$foo = 'bar';

$$foo = 'Foo Bar';

echo $bar;

// output 'Foo Bar'

In the example above, the Variable Variable has been given the name of foo. The use of the double dollar operator gives the variable the name which is the value of foo. In this case, the value of foo is bar.

Limitations of using Variable Variables in PHP

Although PHP has the Variable Variable operator built-in, there are reasons to use more traditional ways of assigning values. The biggest drawback of Variable Variables is speed.

PHP Variable with an assigned value

PHP variable speed

PHP Array with one key-value pair

PHP Array Key Value Pair Speed

PHP Variable Variables

PHP Variable Variable Speed Difference


As you can see, there is a significant speed difference when using Variable Variables. Wherever you have data that you could access using a Variable Variable, an array should be used for the most efficient code.

Learn more about Variable Variables in the official documentation.

Check these PHP Statistics!

Dillon Smart

šŸ‘‹ Hey, I'm Dillon!

Iā€™m a Full-Stack developer in the UK, building websites and applications for around 12 years, landing my first full-time job as a developer in 2015.

Feel free to reach out on Twitter!


This site uses Akismet to reduce spam. Learn how your comment data is processed.