Grow your CSS skills. Land your dream job.

Last updated on:

Variable Variables

<?php

  $var1 = 'nameOfVariable';

  $nameOfVariable = 'This is the value I want!';

  echo $$var1; 

?>

Reference URL

Comments

  1. Alexander Rath
    Permalink to comment#

    Mind you can also do that with more $s:

    And you can use curly brackets:

  2. Alexander Rath
    Permalink to comment#

    Mind you can also do that with more $s:

    <?php
    
      $var1 = 'var2';
      $var2 = 'nameOfVariable';
    
      $nameOfVariable = 'The value I want!';
    
      echo $$$var1;
    
    ?>

    And you can use curly brackets:

    <?php
    
      $var1 = 'nameOf';
      $var2 = 'TheVariable';
    
      $nameOfTheVariable = 'Another value I want!';
    
      echo ${$var1 . $var2}; // Use concatenation to generate the variable name and then access it //
    
    ?>
  3. Permalink to comment#
  4. Wow! I never even knew about this. Might be a pretty great asset in the future.

  5. I would like to ask a question, How to show variable in between the text.
    E.g., I have
    “var1 = $_POST['username'];”

    I want to show it something like this,
    “Hello [username]“.

    How to do it?

    I tried this but it didn’t work,
    “echo Hello $var1;”

    Please help me regarding this.

  6. sreevisakh

    Try like this

    $var=$_POST['username'];
    echo ‘Hello['.$var.']‘;

  7. If you need to create variables from an array there are two options.

    The first uses php extract()

     'Baylor', 'email' => 'baylor@example.com'));
    echo $name; // Baylor
    echo $email; // baylor@example.com
    
    // example: http://baylorrae.codepad.org/VdIA118O
    

    The second options which will give you more control is php list()

    <?php
    
    list($name, $email) = array('Baylor', 'baylorrae@gmail.com');
    
    echo $name;
    echo $email;
    
    // example: http://baylorrae.codepad.org/WejSCaCB
    
  8. perpleXa
    Permalink to comment#

    this is really bad practice and with proper code you should not need that mutation of code.

    also, don’t directly output $_POST/$_GET or $_REQUEST content without using htmlentities() around it, as your site might be vulnerable to cross-site-scripting and other injections.

  9. Permalink to comment#

    Hmmm, I’m probably just a little dense, but could you give an example of when this technique would be useful?

  10. NogZoiets
    Permalink to comment#

    I don’t believe this piece of code would be useful in any way. When coding in PhP or any other language, one of the things you should keep in mind is that your code should be readable by others.
    Of course the content of your code, the values of the var’s, shouldn’t be.

    But when using a snippet like this, you take a away the readability. So i have to agree with perpleXa that this is a bad practice. Srry.

Leave a Comment

Current day month ye@r *

*May or may not contain any actual "CSS" or "Tricks".