Как получить доступ к аргументу «родительской» функции?

Например, у меня есть следующий код:

function a($param)
{
  function b()
  {
    echo $param;
  }
  b();
}
a("Hello World!");

Это вызывает ошибку E_NOTICE, потому что $ param, конечно, не определен (в b ()).

Я не могу передать $ param в b (), потому что b () должна быть функцией обратного вызова preg_replace_callback (). Так что у меня возникла идея сохранить $ param в $ GLOBALS.

Есть ли лучшее решение?

6
задан ComFreek 16 July 2011 в 15:04
поделиться