implementsInterface(Decoder::class) && $class->isInstantiable()) { $name = $class->getConstant("NAME"); $names[$name] = $className; foreach ($class->getConstant("LABELS") as $label) { $labels[$label] = $name; } } } $labelList = []; foreach ($labels as $k => $v) { $labelList[] = "'$k'=>\"$v\""; } $labelList = "const LABEL_MAP = [".implode(",", $labelList)."];"; $nameList = []; foreach ($names as $k => $v) { $nameList[] = "'$k'=>$v::class"; } $nameList = "const NAME_MAP = [".implode(",", $nameList)."];"; echo "$labelList\n"; echo "$nameList\n";