Changeset 59697 in spip-zone


Ignore:
Timestamp:
Mar 24, 2012, 11:55:46 PM (7 years ago)
Author:
denisb@…
Message:

dev/ : reprise de la fonction bel_env (validité XHTML, PHPDoc) rendue désormais pleinement récursive.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _core_/plugins/dev/dev_fonctions.php

    r57288 r59697  
    33if (!defined('_ECRIRE_INC_VERSION')) return;
    44
    5 // Une fonction pour joliment afficher les variables de #ENV, #GET, #SESSION...
    6 // à utiliser avec [(#ENV|bel_env)], [(#GET|bel_env)], [(#SESSION|bel_env)]
     5/**
     6 * Une fonction récursive pour joliment afficher #ENV, #GET, #SESSION...
     7 *              en squelette : [(#ENV|bel_env)], [(#GET|bel_env)], [(#SESSION|bel_env)]
     8 *              ou encore [(#ARRAY{0,1, a,#SESSION, 1,#ARRAY{x,y}}|bel_env)]
     9 *
     10 * @param string|array $env
     11 *              si une string est passée elle doit être le serialize d'un array
     12 *
     13 * @return string
     14 *              une chaîne html affichant une <table>
     15**/
    716function bel_env($env) {
    8   $env = str_replace(array('&quot;', '&#039;'), array('"', '\''), $env);
    9   if (is_array($env_tab = @unserialize($env))) $env = $env_tab;
    10   if (!$env) return '';
    11   $res = "\n";
    12   foreach ($env as $nom => $valeur) {
    13     if (is_array($valeur)) $valeur = bel_env($valeur);
    14     else $valeur = entites_html($valeur);
    15     $res .= "|". entites_html($nom). "&nbsp;:&nbsp;|{" .$valeur. "}|\n";
    16   }
    17   return "\n<fieldset>\n" .propre($res). "</fieldset>\n";
     17        $env = str_replace(array('&quot;', '&#039;'), array('"', '\''), $env);
     18        if (is_array($env_tab = @unserialize($env))) {
     19                $env = $env_tab;
     20        }
     21        if (!is_array($env)) {
     22                return '';
     23        }
     24        $style = " style='border:1px solid #ddd;'";
     25        $res = "<table style='border-collapse:collapse;'>\n";
     26        foreach ($env as $nom => $val) {
     27                if (is_array($val) || is_array(@unserialize($val))) {
     28                        $val = bel_env($val);
     29                }
     30                else {
     31                        $val = entites_html($val);
     32                }
     33                $res .= "<tr>\n<td$style><strong>". entites_html($nom).
     34                                "&nbsp;:&nbsp;</strong></td><td$style>" .$val. "</td>\n</tr>\n";
     35        }
     36        $res .= "</table>";
     37        return $res;
    1838}
    1939
Note: See TracChangeset for help on using the changeset viewer.