在php中返回一个对象类型变量


Returning an object type variable in php

好吧,我有两个类,其中一个类有一个变量,它是另一个类的对象类型。我发现php在对象变量方面很痛苦,或者我做得不对。

示例:

class Class1
{
    private $Name;
    private $Class2 ---> Cant do!: private Class2 $Class2;
     public function __construct($aClass2, $aName) 
     {
       $this->Class2 = new Class2($aClass2->getName());
       $this->$Name = $aName
     }
     function getName() {
       return $this->Name;
     }
     function getClass2() {
       return $this->Class2;
    }
}
class Class2
{
   private $Name;
     public function __construct($aName) 
     {
       $this->Name = $aName;
     }
     function getName() {
       return $this->Name;
     }
}

$aClass1->getClass2()->properties?????

似乎我不能将class1的变量Class2作为其Firm中的Class2对象。

问题是,每当我在class1对象的实例中调用函数getClass2时,编译器似乎不理解我返回的是Class2对象,所以我无法深入了解Class2对象的属性。

我该如何解决这个问题,或者做得过火的最佳选择是什么?我对php手册做了很多研究,但它似乎并没有真正涵盖这一部分,如果涵盖了,我真的不明白。

顺便说一下,我在用NetBeans。

提前谢谢你,任何时候我都可以抢劫你。

这是不可能的,因为PHP是松散类型的。您可以添加类似javadoc的注释来实现IDE中的代码完成:

/**
 *
 * @var Class2
 */
private $Class2