Zend Framework – open source framework for developing web applications and services using PHP 5.3+.

Zend Framework 2

Zend Framework 1 and Zend Framework 2

Zend, a PHP company, released Zend Framework 2 stable version recently and I started working on some projects using Zend Framework 2 right after it came out.
I’ve been working on Magento(an E-Commerce platform that is built on top of Zend Framework 1) for last 4 years.
At the time I started working on Magento, I knew what Zend Framework was but never had any experience with it.
I had more experience with CodeIgniter and I thought CodeIgniter would be a better platform for its simplicity.
However, after I worked on Magento for several months, I became a big fan of Magento and Zend Framework.
Of course, I’ve been struggling for first couple weeks because of its complexity – I wasn’t familiar with Singleton pattern and EAV model.
Now I have more favor on Zend Framework over CodeIgniter.
I would say Zend Framework is complex and difficult to learn than any other PHP frameworks out there, but I think it’s the best framework on the market right now.

Features and concepts overview on ZF1 and ZF2:

Main features on Zend Framework 1:

  • MVC(Model View Controller) architecture
  • Singleton
  • Registries
  • Hard & Soft coded Dependencies
  • Loosely coupled architecture


Zend Framework 2 resembles Zend Framework 1 in many ways, but it works differently.

Main features on Zend Framework 2:

  • Event Driven Services – Event Manager & Service Manager
  • Dependency Injection – to avoid dependencies, ZF2 uses events
  • Aspect Oriented Programming – shape the workflow using event manager
  • Namespaces – requires PHP 5.3
  • Lambda functions
  • developers can install only the components desired – don’t need to install entire framework


Useful resources on ZF2: