variable-variables in PHP

后端 未结 1 1320
眼角桃花
眼角桃花 2020-12-20 23:04

I know you can do: $hash(\'foo\') and $$foo and also $bar[$foo], what are each of these things called?

相关标签:
1条回答
  • 2020-12-21 00:05
    • $hash('foo') is a variable function.
      $hash may contain a string with the function name, or an anonymous function.

      $hash = 'md5';
      
      // This means echo md5('foo');
      // Output: acbd18db4cc2f85cedef654fccc4a4d8
      echo $hash('foo');
      
    • $$foo is a variable variable.
      $foo may contain a string with the variable name.

      $foo = 'bar';
      $bar = 'baz';
      
      // This means echo $bar;
      // Output: baz
      echo $$foo;
      
    • $bar[$foo] is a variable array key.
      $foo may contain anything that can be used as an array key, like a numeric index or an associative name.

      $bar = array('first' => 'A', 'second' => 'B', 'third' => 'C');
      $foo = 'first';
      
      // This tells PHP to look for the value of key 'first'
      // Output: A
      echo $bar[$foo];
      

    The PHP manual has an article on variable variables, and an article on anonymous functions (but I didn't show an example above for the latter).

    0 讨论(0)
提交回复
热议问题