PHP docstring @return类型,用于当前类的子类

时间:2014-11-21 21:34:58

标签: php

父类的静态方法的规范@return类型是什么,它返回一个子类的实例,在编写时未确定?例如:

<?php

    class Thing {

        /**
         * Do something
         *
         * @return ???  Instance of some new class.
         */
        public static function create_subclass($class) {
            return new $class();
        }

    }

    class Person extends Thing {}

    $person = Thing::create_subclass('Person');

?>

似乎这不应该是@return self,因为它返回了self的子类,并且指定所有可能的返回类将是愚蠢的。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可以使用@return Thing@return Person|AnotherClass|AnotherClass