Accessing a variable defined in a parent function

前端 未结 5 886
感动是毒
感动是毒 2020-12-03 00:10

Is there a way to access $foo from within inner()?

function outer()
{
    $foo = \"...\";

    function inner()
    {
        // pr         


        
5条回答
  •  庸人自扰
    2020-12-03 00:40

    PHP<5.3 does not support closures, so you'd have to either pass $foo to inner() or make $foo global from within both outer() and inner() (BAD).

    In PHP 5.3, you can do

    function outer()
    {
      $foo = "...";
      $inner = function() use ($foo)
      {
        print $foo;
      };
      $inner();
    }
    outer();
    outer();

提交回复
热议问题