У семерки имеются отличия. Например, получаем варнинг при запросе статического метода, который не указан как static function Ну ereg канула в лету уже после четверки. Семерка поддерживает preg в старой нотации, но может выдавать варнинг, что необходимо использовать, например, preg_match_callback вместо preg_match. Ну это, если вкратце,
public function generateChildDef(&$def, $module) {
if (!empty($def->child)) return; // already done!
$content_model = $def->content_model;
if (is_string($content_model)) {
// Assume that $this->keys is alphanumeric
$def->content_model = preg_replace_callback(
'/\b(' . implode('|', $this->keys) . ')\b/',
array($this, 'generateChildDefCallback'),
$content_model
);
//$def->content_model = str_replace(
// $this->keys, $this->values, $content_model);
}
$def->child = $this->getChildDef($def, $module);
}
public function generateChildDefCallback($matches) {
return $this->info[$matches[0]];
}