/** * Удаление элемента структуры и всех её дочерних элементов. * * @param Structure $oStructure */ private function deepDelete(Structure $oStructure) { /** @var Structure[] $aStructures */ $aStructures = $oStructure->getStructures(); foreach ($aStructures as $oChildStructure) { $this->deepDelete($oChildStructure); } $oStructure->deleted = true; $oStructure->commit(); }