I need some common behaviors in all controllers. Is a good idea have a BaseController and make all controllers extend that class? If so, What is the correct way to avoid the
Yes, this is a good idea and a very common pattern. Check out Subclassing the Action Controller section of the reference ZF manual.