【发布时间】:2010-03-19 17:27:06
【问题描述】:
我不确定如何用正确的术语来解释这一点,所以也许举个例子是最好的方法......
$master = new MasterClass();
$master->doStuff();
class MasterClass {
var $a;
var $b;
var $c;
var $eventProccer;
function MasterClass()
{
$this->a = 1;
$this->eventProccer = new EventProcess();
}
function printCurrent()
{
echo '<br>'.$this->a.'<br>';
}
function doStuff()
{
$this->printCurrent();
$this->eventProccer->DoSomething();
$this->printCurrent();
}
}
class EventProcess {
function EventProcess() {}
function DoSomething()
{
// trying to access and change the parent class' a,b,c properties
}
}
我的问题是我不确定如何从 EventProcess->DoSomething() 方法中访问 MasterClass 的属性?我需要访问、执行操作和更新属性。 a,b,c 属性将是相当大的数组,并且 DoSomething() 方法将在脚本执行期间被多次调用。任何帮助或指针将不胜感激:)
【问题讨论】:
-
我不确定到底是什么问题,但是不能将 MasterClass 的对象传递给 EventProcess->doSomething 吗?
-
是的,你说得对,我已经意识到我正在测试的域被 cpanel 设置为 php4 运行,而我相信 php5 默认通过引用传递它。
标签: php design-patterns class oop