сегодня моя цель - извлечь все имена классов PHP, связанные с
их имена пространства имен, но я застрял. Вот пример того, что у меня есть:
$content =<<<END
<?php
namespace test;
class a { }
class b { }
namespace foo;
class bar { }
?>
END;
preg_match_all('~^\s*((?:namespace)\s+(\w+);)?\s*(?:abstract\s+|final\s+)?(?:class|interface)\s+(\w+)~mi', $content, $classes);
var_dump($classes);
Выражение работает, только если в пространстве имен не более одного класса, но я не могу понять, как сделать так, чтобы оно соответствовало всем классам в соответствии с пространством имен.