PHP

Extraire les chaines de caractère d'un script PHP

Pour traduire une application réalisée avec le Zend Framework, il faut récupérer toutes les chaines de caractères utilisées par ce dernier. Poedit ne fait pas l'affaire, car les textes ne sont pas précédées d'un mot clé comme _ qui permettrait de les identifier. J'ai donc écrit un petit script en ligne de commande qui utilise la fonction token_get_all de PHP pour extraire les chaines à traduire dans les composants Zend/Validate du framework.

Etiquettes:

Mettre en cache des images avec Zend_Cache_Frontend_Page

Quelques conseils pour mettre en cache des images avec Zend_Cache_Frontend_Page :

  • Ne pas activer le paramètre debug_header car il ajoute du texte au début de l'image ce qui empêche son affichage ;
  • Penser à activer cache_with_cookie_variables car si vous utilisez les sessions, votre SID est certainement passé à l'aide d'un cookie ;
  • Activer la mémorisation des entêtes Content-type et Content-length ;
  • Voter pour qu'ils implémentent l'option http_conditional qui permettra d'utiliser le cache du navigateur en envoyant un code HTTP 304 Not Modified (http://framework.zend.com/issues/browse/ZF-1075).

Exemple de configuration :

<?php
$pageFrontendOptions 
= array(
    
'lifetime' => null// Les données du cache n'expire pas
    
'memorize_headers' => array('Content-type''Content-length'),
    
'regexps' => array(
        
'^/images/thumbnail/' => array(
            
'cache' => true,
            
'cache_with_cookie_variables' => true,
            
'cache_with_get_variables' => true,
            
'tags' => array('thumbnails')                    
        )
    )
);
?>

Etiquettes:

NetBeans pour PHP

Le logo de l'IDE NetBeans

Ca fait maintenant une semaine que je me suis mis à NetBeans. Je ne l'avais jamais essayé jusqu'ici car pour moi c'était une usine à gaz en provenance du monde Java semblable à Eclipse.

Et bien j'ai été agréablement surpris. Il est bien plus léger et réactif qu'Eclipse. Il s'installe facilement, son support de PHP est proche de celui de Zend Studio, il marche très bien avec le Javascript et les feuilles de style CSS.

Différences entre iconv() sur Windows et Unix

Pour mon utilitaire de conversion d'unités, j'avais besoin de constituer un index sous la forme d'un tableau PHP. La recherche dans ce tableau s'effectuant à partir d'une saisie utilisateur, il me fallait une fonction pour supprimer les accents et les caractères spéciaux, de façon à ce qu'une saisie utilisateur comme mètre produise le même résultat que metre et que soit équivalent à m2.

Etiquettes:

Lancement des tests

Vous pouvez à présent lancer vos tests. Ouvrez une fenêtre DOS (vous savez, ce truc avec le fond noir) et tapez les incantations suivantes :

cd c:\wamp\www\votreapp\test
c:\wamp\php\phpunit AllTests

La bête devrait vous répondre :

Taxonomy upgrade extras:

Création d'une suite de tests

Ceci étant fait, on va créer notre suite de tests. Ajoutez un répertoire test à la racine de votre application et placez-y le code suivant.

/test/AllTests.php

Taxonomy upgrade extras:

Installation de PHPUnit

Pour commencer, nous devons installer la bibliothèque PHPUnit qui n'est pas fournie avec le framework. Le plus simple est d'utiliser PEAR :

Tests unitaires avec Zend_Test

Le composant Zend_Test permet de réaliser des tests unitaires sur les applications utilisant le modèle MVC. Nous allons voir comment mettre en place des suites de tests qui nous permettront de vérifier le bon fonctionnement de notre application.

Taxonomy upgrade extras:

Génération de code avec le Zend Framework

Avec la sortie de la Release Candidate 1 du Zend Framework 1.6 est annoncé une version préliminaire des composants Zend_Tool qui incluront des classes pour la génération et la modification de code.

Pages

Subscribe to RSS - PHP