5

Can i override fetchall method in a model? I need to check sth everytime fetchAll is called. The model extends Zend_db_table_abstract

2 Answers 2

9

To override this method you would need to subclass the Zend_Db_Table_Abstract. Like so:

<?php
abstract class My_Db_Table_Abstract extends Zend_Db_Table_Abstract
{
    ...

    public function fetchAll($where, $order)
    {
        ...
    }

    ...
}

Then make sure your models extend My_Db_Table_Abstract instead. This way, you will always inherit your overridden fetchAll method.

Sign up to request clarification or add additional context in comments.

1 Comment

Since you're naming it Abstract, you probably want it to be an abstract class.
0

Yes. Just define a new fetchAll() method in your model with the same construction as the Zend_db_table_abstract method (ie same input / output) then at the end of your method call the parent method:

parent::fetchAll($params)

Andrew

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.