Zend Framework voor PHP

Zend Framework is een set functionaliteiten die men kan inladen en gebruiken in de programmeertaal PHP. Men moet daarbij denken aan bijvoorbeeld functies voor gebruikersfunctionaliteiten, het versturen van mail en het inlezen en bewerken van PDF bestanden. Zend Framework wordt voornamelijk gebruikt om websites en content management systemen snel te kunnen ontwikkelen.

 

Het ontstaan van Zend Framework

De maker van Zend Framework is het Israëlische bedrijf Zend Technologies. Met de opkomst van programmeeromgevingen zoals Ruby, Java en .NET met hun uitgebreide functiebibliotheken kregen ook PHP-ontwikkelaars behoefte aan een snel en stabiel framework. Rond 2004 begon men aan het Zend Framework met de gedachte om deze zo gemakkelijk mogelijk in het gebruik te houden. De componenten van Zend Framework moesten tevens veilig en stabiel zijn, zodat het tegemoet zou komen aan de eisen van belangrijke productieomgevingen. Hiervoor werden de componenten flink doorgetest.

 

 

Zend Framework en het MVC model

Zend Framework is opgezet volgens het MVC model. Dat is een modelleringstechniek voor websites. De website wordt logisch verdeeld in models, views en controllers.

 

  • Model: informatie met betrekking tot gegevens, datastructuren
  • View: aanwijzingen met betrekking tot presentatie (beeldscherm, printer)
  • Controller: programmalogica, de "lijm" tussen model en view.

 

Een webprogrammeur kan ervoor kiezen om de gehele website volgens de MVC-richtlijn zoals gebruikt door Zend Framework te schrijven. Het is echter niet verplicht: losse componenten kunnen gemakkelijk onafhankelijk van elkaar worden ingeladen met behulp van de autoloader (Zend_Loader).

 

 

Componenten van Zend Framework

 

Zend_Acl

Dit component maakt het beheer van access control lists mogelijk. Voor een object kan men met behulp van een access control list bepalen welke andere objecten van het object gebruik mogen maken.

 

Zend_Auth

Dit component ondersteunt functionaliteiten rond het inloggen en uitloggen door gebruikers op de website. Zo biedt Zend_Auth onder andere ondersteuning voor OpenID.

 

Zend_Date

Bevat functies voor datum en tijd. Ondersteunt ook verschillende regionale formaten. Bevat allerlei handige functies, bijvoorbeeld het berekenen van het tijdstip van zonsopgang en -ondergang op een gegeven datum.

 

Zend_Db

Database abstractielaag met ondersteuning voor verschillende database managementsystemen. PDO (PHP Data Objects) wordt hierbij gebruikt.

 

Zend_Form

Component voor het bouwen van webformulieren. Validatie en filters (opschoning van door de gebruiker ingevoerde gegevens) kunnen worden toegevoegd.

 

Zend_Mail

Functies voor het versturen van e-mail vanuit de website.

 

Zend_Pdf

Component met functies voor het genereren, inlezen, aanpassen en opslaan van PDF bestanden. Handig voor bijvoorbeeld het genereren van facturen (webshop) in PDF-formaat.

 

Zend_Session

Wanneer iemand een website bezoekt, dan krijgt hij of zij een zogenoemde sessie toegewezen. In deze sessie kan informatie over het bezoek worden opgeslagen (bijvoorbeeld producten in een winkelwagen in het geval van een webshop). Zend_Session maakt sessiebeheer gemakkelijker.