我完全可以理解,为什么你想要这样做。 但是,这将使得团结和团结部更加难以瓦解(因为它们可以通过核心法典追踪呼吁)。
但是,如果你真想这样做的话,你可以创建一种发电机,使用token_get_all
,从每个档案中取出所有标物,并写出一个只有适当标子的新字(接口,有空码区)。
要么使用reflection来制作这些课程。 基本上为每个类别装上一个新的反射器,并使用其方法生成该代码。 例如,制定方法:
foreach ($reflector->getMethods() as $method) {
$signature = $method->getDocComment() . "
";
$modifiers = $method->getModifiers();
if ($modifiers & ReflectionMethod::IS_PUBLIC) {
$signature .= public ;
} elseif ($modifiers & ReflectionMethod::IS_PROTECTED) {
$signature .= protected ;
} elseif ($modifiers & ReflectionMethod::IS_PRIVATE) {
$signature .= private ;
}
if ($modifiers & ReflectionMethod::IS_STATIC) {
$signature .= static ;
}
if ($modifiers & ReflectionMethod::IS_ABSTRACT) {
$signature .= abstract ;
}
if ($modifiers & ReflectionMethod::IS_FINAL) {
$signature .= final ;
}
$signature .= function . $method->name. ( ;
$params = array();
foreach ($method->getParameters() as $param) {
$paramSignature = $param->name;
if ($param->isDefaultAvailable()) {
$paramSignature .= = . var_export($param->getDefaultValue(), true);
}
$params[] = $paramSignature;
}
$signature .= implode( , , $params) . ) {} ;
}
还需要做更多的工作(例如打背等),但应该让你开始这样做。