Witam,

Mam pytanie czy funkcję preg_replace_callback() można używać w pośrednio rekurencyjnej formie, tzn. używać jej ponownie w funkcji która jest przez nią wywoływana. W każdym razie poniższy kod powoduje błąd w httpd.exe (appserv pod Windows)

upraszczając mój kod wygląda to następująco:

class parser
{
.......

public function analyze($matches)
{
  switch (count($matches))  
  {
  ...
  case 14:
    $lparser = new parser($filename)
    $lparser->run();     //  -- zródło konfilktu, po usunięciu tej linii wszystko jest OK.
  break;
  }
}

public function run()
{
  ...
  $newContent = preg_replace_callback($wyr_reg, array($this,'analyze'),$content);
  ...
}

}

$parser = parser('project.php');
$parser->run();

Jeśli to nie wina tej funkcji, co może być źródłem tego błędu?


Jednak można, problem miał inne źródło.