public function filterSubjectNames(array $filters)
{
foreach (array_keys($this->subjects) as $subjectName) {
$unset = true;
foreach ($filters as $filter) {
if (preg_match(sprintf('{^.*?%s.*?$}', $filter), sprintf('%s::%s', $this->getClass(), $subjectName))) {
$unset = false;
break;
}
}
if (true === $unset) {
unset($this->subjects[$subjectName]);
}
}
}