首先,我对oop等几乎是一个noobie,所以请善待。
我确实阅读了很多手册,但不知何故迷失在所有的东西中,找不到答案:( 所以任何提示,链接等都将非常感激
无论如何,我发现自己处于一种情况,我需要在执行类中的特定方法时调用函数。但是,我无法触及课程本身。
要证明,这个类是这样的:
/* icannot touch this class*/
class Bar extends Foo {
/*some other methods and variables here, omitted for sanity reasons**/
function DBSave(){
$this->cat_parent = intval($this->cat_parent);
$this->cat_num_files = intval($this->cat_num_files);
return parent::DBSave();
}
/*some more methods omitted for sanity reasons**/
}
/*end of class*/
/ ** 修改 *** /
根据下面的评论,我写了/添加了以下内容,但它并没有按照我希望的方式做事:(
class Baz extends Bar {
public function DBSave() {
/*here I want to use $this->cat_parent etc to do something with*/
parent::DBSave();
}
}
/*this is probably also wrong, but I tried with the following results*/
$b = new Baz();/*just adding this does nothing*/
$b->DBSave();/* when this is added as well it *always* runs regrdless of whether bar->foo is called*/
还 - 我忘了提,对不起 - Baz中的方法需要变量($ this-> cat_parent等)来做一些明智的事情 希望上面有道理......?
/ ** 编辑结束 * ** /
每当DBSave被调用时,我想运行另一个函数,但我不知道如何去做:( 我尝试了一些扩展课程的东西,但它只是出错了或者一直调用它等等......任何提示都会非常感激
当然,如果需要,我们很乐意扩大这个问题
感谢
答案 0 :(得分:1)
最简单的方法可能是:
class Baz extends Bar {
public function DBSave() {
parent::DBSave();
}
}
您可以在该方法的正文中定义其他功能。