/** * Метод, вызываемый извне. * Главная его задача - проследить за освобождением ресурсов, * т.к. создаются тяжёлые объекты. */ protected function doFinalize($pattern) { ExternalPluginsManager::SimpleHtmlDom(); /* http://simplehtmldom.sourceforge.net/ */ $html = str_get_html($pattern); try { $this->finaliseImpl($html); } catch (Exception $e) { if ($html) { $html->clear(); unset($html); } throw $e; } if ($html) { $pattern = $html->save(); $html->clear(); unset($html); } return $pattern; }