在PHP中创建多级类

在PHP中创建多级类,php,class,object,inheritance,methods,Php,Class,Object,Inheritance,Methods,我正在从事一个软件项目,在查看其他项目的代码(如Zend Framework)时,我注意到它们使用某种类型的继承多级类 例如$system->sessions->closeSession()。我知道对象提供类似的功能,但我不知道它们可以用于实际的可调用方法 如何使用这种技术创建类?没有什么特别之处。在模糊的非功能伪代码中: class Zend_Session { function closeSession() { ... } } class zend { public $ses

我正在从事一个软件项目,在查看其他项目的代码(如Zend Framework)时,我注意到它们使用某种类型的继承多级类

例如
$system->sessions->closeSession()
。我知道对象提供类似的功能,但我不知道它们可以用于实际的可调用方法


如何使用这种技术创建类?

没有什么特别之处。在模糊的非功能伪代码中:

class Zend_Session {
    function closeSession() { ... }
}

class zend {
   public $sessions;
   function __construct() {
      $this->sessions = new Zend_Session;
   }
}

这本身不是继承,尽管这些类很可能使用继承(使用
extends
关键字定义)。对象
$system
有一个公共属性
$sessions
,它本身就是一个对象,并且有一个方法
closeSession
。一般来说,公共属性并不是最好的方法:
$sessions
应该是一个公共的
getSessions()
方法,以保持其只读性。此外,我发现在类型暗示方面,使用带有适当phpdoc注释的getter方法比使用公共属性更可靠,虽然那可能只是一个Netbeans的小插曲
:)
谢谢,我现在明白了:)我不知道它有那么简单!我的应用程序现在会运行得更顺畅一些。