In part the answer will depend on the size and scope of the project. Generally, the bigger the project, the more the organization and loose-coupling that a good OOP approach imposes adds to the manageability of the project. But even with a large, OOP project, you can still use pieces of procedural code/functions where objects may not necessarily be required.
Neither technique is necessarily "better", but my experience is that most developers who start working with OOP come to prefer it as their general MO over procedural development, once they have that "Eureka moment" when it all starts to make sense in their brain. (For me that started to happen about halfway through Matt Zandstra's book PHP Objects, Patterns, and Practice.)