Re: Variable scope - function in function



Chung Leong wrote:
Paul Lautman wrote:
Here's something that I can't manage to find explicitly documented.
In the following snippet:

function outer() {
global $a;
function inner() {
global $a;
echo $a.'1<br>';
}
$a = 's';
inner();
echo $a.'2<br>';

}
outer();


If either of the globals statements is removed, the variable is not
accessable within inner.

What you're trying to do won't work if you call outer() more than
once. PHP has no support for closure or inner functions.

Interesting, that case indeed fails. Yet I came across this problem when
defining a sort function for usort. In that case, one call call the sort
function more than once.


.



Relevant Pages