Les développeurs de ZF3 pensent que le framework devrait être un ensemble de composants isolés avec des dépendances minimales les uns par rapport aux autres. C'est ainsi que ZF3 est organisé.
L'idée est de vous laisser utiliser certains composants ZF3 seuls, même si vous créez votre site avec un autre framework. Cela devient encore plus facile, en gardant à l'esprit que chaque composant de ZF3 est un package installable par Composer, de sorte que vous pouvez facilement installer n'importe quel composant ZF3 avec ses dépendances via une seule commande.
Il existe plusieurs composants ZF3 "principaux" qui sont utilisés (explicitement ou implicitement) dans presque toutes les applications Web:
Zend\EventManager
Ce composant permet d'envoyer des événements et d'enregistrer des listeners pour y réagir.
Zend\ModuleManager
. Dans ZF3, chaque application est composée de modules et ce composant contient des fonctionnalités pour les charger.
Zend\ServiceManager
. C'est le registre centralisé de tous les services disponibles dans l'application, ce qui permet d'accéder aux services depuis n'importe quel point du site Web.
Zend\Http
fournit une interface facile pour effectuer des requêtes HTTP (Hyper-Text Transfer Protocol).
Zend\Mvc
. Prise en charge du modèle Model-View-Controller et séparation de la logique métier de la présentation.
Zend\View
. Fournit un système d'aides de vue (view helpers), de filtres de sortie et d'échappement de contenu de variables.
Utilisé dans la couche de présentation.
Zend\Form
. Collecte de données de formulaire Web, filtrage, validation et rendu.
Zend\InputFilter
. Fournit la possibilité de définir des règles de validation des données de formulaire.
Zend\Filter
. Fournit un ensemble de filtres de données couramment utilisés, tels que le string trimmer.
Zend\Validator
. Fournit un ensemble de validateurs couramment utilisés.