Développement Web

Installer PEAR sur Windows

Petit aide-mémoire.

En supposant que PHP soit installé sur votre système Windows, vous pouvez installer PEAR en 3 étapes :

  1. Téléchargez l'archive PHAR depuis l'URL : http://pear.php.net/go-pear.phar ;
  2. Placez le fichier .phar dans le répertoire où se trouve l'exécutable PHP ;
  3. Tapez php go-pear.phar et laissez vous guider.

Si vous voulez ensuite installer PHPUnit, enchaînez avec : Installation de PHPUnit

Zend_Translate, gettext et les pluriels

Zend_Translate gère les pluriels, mais la documentation officielle donne peu de détails sur la manière de procéder avec l'adaptateur gettext. Pour vous faire gagner un peu de temps, voici ce que vous devez savoir pour une traduction Française.

Dans votre fichier .po, vous devez ajouter dans l'entête :

"Plural-Forms: nplurals=2; plural=n>1;\n"

Ensuite, sur les termes où vous avez besoin du pluriel, vous devez utiliser la syntaxe suivante :

Passez à try_files

Pour rediriger les requêtes qui pointent sur un fichier ou un répertoire qui n'existe pas vers /index.php, avec Nginx et Zend Framework on utilise traditionnellement :

if (!-e $request_filename){
  rewrite ^.*$ /index.php break;
}

Mais ce n'est pas optimal car il est recommandé d'éviter if.

Zend_Test : expressions assertQuery

Zend_Test fournit une série de méthodes commençant par assertQuery qui permettent d'examiner le DOM de la réponse. La syntaxe des requêtes est identique à celle utilisée pour les sélecteurs CSS. Voici quelques exemples d'utilisation.

Zend_Test : récupérer les messages d'erreur d'un formulaire

Lors d'un test unitaire, il peut arriver que la soumission d'un formulaire échoue. Cela peut être du au passage via POST d'une valeur qui n'est pas considérée comme valide par le formulaire. Pour identifier la source du problème, vous êtes obligé d'examiner la réponse HTML pour retrouver d'éventuels messages d'erreurs, ce qui n'est pas très pratique. Le mieux ce serait de retrouver l'objet form qu'on a passé à la vue. C'est possible en passant par le ViewRenderer :

<?php
$vr 
Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
$view $vr->view;
$form $vr->form;
?>

Vous pouvez ensuite utiliser la méthode getMessages pour récupérer les messages d'erreur et les afficher sur la console :

<?php
$this
->assertXXX(..., print_r($form->getMessages(), true));
?>
Subscribe to RSS - Développement Web