如何在PHP中过度使用对象功能?

时间:2014-11-22 06:27:19

标签: php oop

我有一个PHP项目,我用PHP对象构建一种DOM。从父类'fs'开始,巫婆将网页中的每个对象都保存在一个结构中。 我希望对象可以通过父对象'system'发送彼此的消息。 'system'-object包含核心对象(config,database,template,users,...)的引用。我构建了一个方法,应该组织'子对象'的通信,其中参数的名称和被调用的方法是参数允许的。

看起来像......(应忽略调试消息......)

public static function doWith( $object, $function, $vars = "" ) {
            $object = strtoupper($object);
            if( is_object($this->$object) ) {
                $this->$object->$function ($vars);
            } else {
                print("empty!");
            }
        }

但仍然如此,代码不想这样做。我的问题在哪里?不能通过$ this-> $ var-> $ method()?

调用方法

感谢您的帮助......

1 个答案:

答案 0 :(得分:0)

静态函数中不存在

$this 如果您尝试访问的数据来自静态变量/函数,则可以使用self来访问它:

self::$object

如果$object不是静态成员,您必须使其成为静态成员,或者在使用之前创建class的实例。