あきらです > このような設計をしてしまった場合、クラス名を変えることしか > 解決はできないのでしょうか? 通常はクラス名が重複している時点で設計がおかしいと思います 以下のコードですと出力はABになります。 <?php class Pub_ClassA { function __construct() { print "A"; } } class Pub_ClassB { function __construct() { print "B"; } } $class_name = "Pub_ClassA"; $class = new $class_name(); $class_name = "Pub_ClassB"; $class = new $class_name();