在PHP中创建多级类
我正在从事一个软件项目,在查看其他项目的代码(如Zend Framework)时,我注意到它们使用某种类型的继承多级类 例如在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
$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的小插曲:)
谢谢,我现在明白了:)我不知道它有那么简单!我的应用程序现在会运行得更顺畅一些。