Zend Framework

Utilisation de __invoke dans le Zend Framework 2

__invoke est une nouvelle méthode magique introduite par PHP 5.3. En bref, elle permet d'appeler un objet comme si c'était une fonction. Cette fonctionnalité est utilisée dans plusieurs classes du ZF2 comme les filtres. Voici un petit exemple avec Zend\Filter\Boolean :

Etiquettes:

Testez la version préliminaire du Zend Framework 2.0

Envie de tester la prochaine version du framework ? Suivez ces différentes étapes pour mettre rapidement en place un premier projet sur Windows :

Etiquettes:

Propriétés en PHP

En C#, il y une fonctionnalité que j'apprécie particuliérement. C'est la possibilité de définir des propriétés :

class MyClass
{
    protected string _myProperty;
 
    public string MyProperty
    {
        get
        {
            return _myProperty.ToUpper();
        }
        set
        {
            _myProperty = value;
        }
    }
}

Tester la génération d'un PDF avec Zend_Test et Zend_Pdf

Une petite astuce pour tester un contrôleur qui génère du PDF. Pour s'assurer que c'est bien du PDF qui est envoyé, on peut utiliser Zend_Pdf qui est capable de charger un document existant :

<?php
$this
->dispatch('/moncontrolleur/1/pdf');
$this->assertResponseCode(200);
$this->assertHeaderContains('Content-type''application/pdf');
$pdf Zend_Pdf::parse($this->getResponse()->getBody());
$this->assertEquals('MonProgramme'$pdf->properties['Creator']);
?>

Si le PDF n'est pas correct, Zend_Pdf lancera une exception : Zend_Pdf_Exception: File is not a PDF. On peut également vérifier les propriétés du PDF et le nombre de pages. Par contre, on ne peut pas accéder au contenu du PDF pour vérifier le texte qu'il contient.

Subtilité de Zend_Date

Je viens de tomber sur un méchant bogue dans mon application. Il est du à une subtilité dans les formats ISO proposés par Zend_Date.

Le problème se situe au niveau des années. Zend_Date propose deux formats différents : yyyy et YYYY. Le premier, celui avec les y en minuscules fournit le résultat auquel on peut s'attendre, alors que le deuxième renvoie l'année dans lequel se situe la semaine !

Mettre en place une API avec Zend_Json_Server

Vous avez une jolie application Web et vous souhaitez fournir une API ? Rien de plus simple avec Zend_Json_Server. Ce composant du Zend Framework permet de mettre en place une API utilisant le protocole JSON-RPC.

Ajouter un menu à son site avec Zend_Navigation

Un menu créé avec Zend_Navigation

Ca fait un moment que je n'ai pas blogué, je vais me rattraper avec un petit tutoriel sur Zend_Navigation. Je vous propose de réaliser un menu à deux niveaux similaire à celui qu'on trouve par exemple sur le site de Libération, le javascript en moins.

Zend_Db_Table_Plugin

Ce week-end je m'apprêtait à développer un système de plugin pour Zend_Db_Table quand j'ai eu la présence d'esprit de consulter la feuille de route du ZF (http://framework.zend.com/roadmap). Bien m'en a pris car ce composant est justement prévu pour la prochaine version du framework (1.10). Il a même failli être intégré à la 1.9.

Ah les jolies variables de vue

Je ne sais pas pour vous, mais moi je ne trouve pas ça particulièrement élégant de toujours devoir passer par $this pour accéder à mes variables de vues.

Heureusement, dans le bestiaire des fonctions PHP, on dispose d'une fonction nommée extract qui crée des variables à partir d'un tableau. En la combinant à la méthode getVars de Zend_View qui permet d'obtenir l'ensemble des variables assignées à une vue, on peut exporter ces dernières sous la forme de variables locales.

Zend Framework 1.9.1

La version 1.9.1 du Zend Framework est disponible depuis le 11 août. Cette version de maintenance corrige quelques bogues, dont notamment ceux qui affectaient le composant Zend_Acl. D'après Ralph Schindler, le problème des ressources qui n'étaient pas transmis en tant qu'objet aux classes d'assertion et dont je vous avait parlé précédemment dans mon article sur les assertions dynamiques sont à présent résolus. Une bonne nouvelle donc, puisque c'était vraiment un point bloquant pour tirer vraiment parti des fonctionnalités proposées par Zend_Acl.

Pages

Subscribe to RSS - Zend Framework