我是PHP oops的新手,并且下面的代码片段有问题: -
我有一个返回EnityManager对象的单例类,当我尝试使用自动完成调用任何方法时有EM对象后,它不起作用。我知道我们需要告诉IDE一个方法的返回类型才能使事情有效,但是我无法弄清楚要添加到注释中的内容。
请参阅下面的代码段: -
class EntityManagerUtil implements EntityManager {
protected static $instance = null;
private static $em = null;
private function __construct() {
// Making class singleton
}
private function __clone() {
// Preventing from being clonned
}
/**
* @return EntityManagerUtil $instance
*/
public static function getInstance() {
if (! isset ( static::$instance )) {
static::$instance = new EntityManagerUtil ();
$doctrine = new \Doctrine ();
static::$em = $doctrine->getEM ();
}
return static::$instance;
}
/**
*
*
*/
public function getEntityManager() {
return static::$em;
}
}
获得EM的实例后: -
$emImpl = \Service\Impl\EntityManagerUtil::getInstance();
$em = $emImpl->getEntityManager();
其中Doctrine是一个包含名为$ em的属性的类。
我应该在名为“getEntityManager”的方法的返回注释中添加什么才能获得上述代码? 任何人都可以建议。