tags:

views:

35

answers:

1

I have declared

$func = array(
    'a' => array(
        'b' => function() {
            echo "hello";
        }
    )
);

I try to call in this way but it doesn't work

$call = $func['a']['b'];
$call();

I get a error Fatal error: Function name must be a string

How can I call the anonymous function? I'm using PHP 5.3.

Update It works, I just used wrong keys.

+1  A: 

What you did works. Try this:

<?php
$func = array(
    'a' => array(
        'b' => function() {
            echo "hello";
        }
    )
);
$call = $func['a']['b'];
$call();

See also here.

Artefacto
Ah, my bad, I used wrong keys when I called the array.
Codler