PHP - 向类添加方法

时间:2012-03-01 21:17:28

标签: php mongodb pecl

我正在寻找扩展PHP类以添加自定义方法的方法。特别是我想为MongoDate添加一个日期格式方法(来自PHP MongoDB驱动程序)。

我只是觉得如果从Mongo集合中收到的MongoDate对象提供了一种方法使其可读,并且无需调用函数或类来执行此操作,那就更清晰了。

$d = new MongoDate();

some_date_format($d); // the way it works now

$d->format(); // the way it would be cleaner

有没有解决方案?

3 个答案:

答案 0 :(得分:5)

继承它!

class myClass extends MongoDate{
    public function format(){
    }
}

然后执行它:

$d = new myClass ();

some_date_format($d); // the way it works now

$d->format(); // the way it would be cleaner

答案 1 :(得分:2)

扩展它。这是一个基本的OOP原则。

class NewClass extends MongoDate {
    public function newFunction(){
        //Stuff here.
    }
}

这将定义一个新类NewClass,它将继承旧MongoDate类中的所有公共和受保护属性和方法,并且还包含newFunction()函数。

答案 2 :(得分:0)

你不能改变PHP驱动程序返回日期的类型,所以lznogood&真理的答案是你能做的最好的。