SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 306 visiteurs en ce moment

Accueil > Outils pour plugins > Le Couteau Suisse > Débogueur de développement

Débogueur de développement

20 septembre 2010 – par PieroWbmstr

18 votes

Une nouvelle lame du Couteau Suisse permettant de régler les niveaux d’erreurs PHP renvoyées à l’écran et de sélectionner l’espace SPIP sur lequel appliquer ces réglages.

Présentation

Le débogueur est un outil de développement vous permettant de gérer le traitement des erreurs de vos scripts PHP dans SPIP. Il propose de choisir le niveaux d’erreurs qui seront renvoyées et écrites à l’écran (avec les explications standards de PHP) ainsi que l’espace de SPIP qui sera concerné : les pages publiques seules, les pages privées seules ou toutes les pages publiques et privées.

Cette lame a été ajoutée au plugin Couteau Suisse à partir de sa révision 40923 (le 20/09/2010). Elle est proposée dans la catégorie d’outils « Divers ». Si elle n’apparaît pas dans votre version du plugin, mettez-le à jour.

PNG - 21.7 ko
Aperçu de la lame

Techniquement ...

Gestion des erreurs

Lorsque le débogueur est actif, l’option de configuration PHP « display_errors » est définie sur ’true’ en fonction de l’espace de SPIP que vous sélectionnez : pages publiques, pages privées ou les deux. L’option PHP « error_reporting » est définie sur la valeur sélectionnée parmi les principaux niveaux proposés par PHP [1].

Pour rappel, sont listés ci-dessous les différents types de messages renvoyés par le compilateur PHP, suivis de la valeur passée par le filtre du débogueur à l’option « error_reporting » :

  • les messages d’erreurs graves ou fatales arrêtant le déroulement du script : E ERROR ;
  • les messages d’avertissements, ou alertes, qui n’arrêtent pas l’exécution du script : E WARNING ;
  • les notices d’information de problèmes à l’exécution (variables non déclarées par exemple) : E NOTICE [2] ;
  • des conseils PHP sur l’utilisation des globales, les options de configuration et le déroulement du script en général : E STRICT [3] ;
  • E ALL renvoie toutes les erreurs PHP sauf les conseils.

Liens de documentation

Les messages d’erreur PHP sont formatés par la lame de façon à ce que les liens proposés lors de l’utilisation erronée d’une fonction standard vous renvoient vers la documentation officielle en ligne de PHP [4] (http://www.php.net/docs.php). Ces liens de documentation sont ici redéfinis du type « php.net/manual/en/la_fonction.php » [5], ce qui implique une connexion Internet.

Si rien ne va plus ...

En cas de problème d’affichage (une page blanche en partie privée par exemple) vous interdisant d’accéder à la page de configuration classique du Couteau Suisse, une page privée présentant le formulaire du débogueur seul est accessible à l’adresse : « ecrire/ ?exec=debug ». Elle est réservée au webmestre du site et ne renvoie aucun message (pas d’information de modification des réglages du filtre). Elle n’est à utiliser qu’en cas exceptionnel.

Pour aller plus loin

Pour compléter une structure SPIP de développement, vous trouverez sur Spip-Contrib d’autres plugins intéressants, et notamment :

  • les plugins Les tests unitaires et TestBuilder, qui permettent de mettre en place rapidement des scripts de tests pour vos développements, qui sont peu utilisés et pourtant très utiles (par exemple pour tester la compatibilité de modifications ...) ;
  • le plugin Testeur : un shell PHP pour tester vos scripts, qui vous permet de tester rapidement des lignes de commande PHP depuis l’espace privé de SPIP.

Notes

[1À noter ici que la lame ne propose pas de niveaux « utilisateur » (E_USER_ERROR ...) qui sont a priori peu utilisés dans les développements sur un noyau SPIP. Cette option pourra être proposée dans les prochaines évolutions de la lame en fonction des besoins.

[2Attention en partie privée de SPIP, cette option peut alourdir considérablement l’affichage des pages (suite de notices en en-tête).

[3Cette option est une nouveauté de PHP5 et peut être très utile lors des initialisations et déclarations de globales ou constantes, afin de vérifier que les suppositions faites au départ sont avérées et ne dépendent pas du système faisant tourner PHP.

[4Par défaut, le fichier de configuration « php.ini » de la distribution de PHP construit les liens de documentation vers une documentation ... interne au serveur lisant le script !

[5Cela correspond à l’URL d’actualité dans la documentation officielle à la date de rédaction de cet article.

Dernière modification de cette page le 20 septembre 2010

Retour en haut de la page

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Wordpress 2 SPIP

    26 mars 2012 – 25 commentaires

    Que fait Wordpress 2 SPIP Il importe un site Wordpress 3.3.1 dans un site SPIP 2.1.12 vierge. Les deux sites doivent être sur la même base de données et les tables Wordpress doivent commencer par wp_ (cas d’une installation Wordpress par défaut). (...)

  • Photoswipe

    18 septembre 2016 – 17 commentaires

    Une lightbox javascript responsive. PhotoSwipe est une boîte multimédia — comme la Mediabox installée en série avec SPIP — qui permet de zoomer à la taille réelle des images et qui gère intelligemment les légendes. Le plugin est basé sur la librairie (...)

  • Spip2Spip

    21 février 2008 – 157 commentaires

    Spip2spip permet de synchroniser le contenu de plusieurs sites SPIP entre eux en étendant le principe de la syndication thématique. Les articles d’un SPIP sont récopiés d’un site à l’autre en conservant leur formatage (...)

  • Tutoriel : créer une carte interactive avec GIS4

    19 octobre 2013 – 27 commentaires

    Utilisation de quelques fonctions javascript pour créer des interactions avec une carte GIS. L’objet de ce tutoriel est de produire une carte interactive. Effacer tous les points d’une carte La fonction javascript removeAllMarkers() (...)

  • Lecteur pdf javascript pdf.js

    20 février 2012 – 146 commentaires

    Ce plugin est basé sur le projet pdf.js qui permet une lecture en ligne des pdfs depuis le navigateur. Ce plugin est expérimental et les contributions sur la zone sont les bienvenues. Avantages Open source Ne requiert pas flash et (...)