IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Class table html5

Injectez vos datas directement dans une balise avec options de formatage. Documentation.pdf dans l'archive.
Avatar de CosmoKnacki
Expert éminent https://www.developpez.com
Le 23/03/2024 à 22:29
Ta classe et ton constructeur font trop de choses. Part plutôt sur quelque chose comme ça:
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/* tout ce qui est information: titre, data, header, footer */
class TableData
{

    public function __construct(array $data = [])
    {
        $this->setData($data);
    }

    public function setData(array $data = [])
    {}

    public function setTitle(string $title)
    {}

    public function setFooter()
    {} // etc.
}

/* tout ce qui est aspect de la table: transposé ou non, attributs html (id, class), colonnes ou lignes mises en évidence ...*/
class TableOptions
{}

class Table
{
    public function __construct(TableData $tableData, TableOptions $tableOptions)
    {}
    
    /* display a la charge de produire le html en fonction des données et options dont l'instance dispose
       Au besoin ne pas hésiter à déléguer certaines tâches si cette méthode devient obèse:
         - une méthode qui s'occupent du titre
         - une autre pour les données
         - une pour le footer, etc.
    */
    public function display() // ou buildHtml(): string
    {}
}
de manière à déléguer un maximum. Tes méthodes doivent rester concises, lisibles, avec un rôle bien précis.
Avatar de laurent1133
Membre actif https://www.developpez.com
Le 02/09/2024 à 18:44
Bonjour , vous avez raison ce code n'est pas très "élégant", (c'était urgent). En tous cas, merci pour réflexion expérimenté ! ce qui motive à progresser.
Avatar de laurent1133
Membre actif https://www.developpez.com
Le 23/03/2024 à 12:28
Bonjour,

Je vous propose un nouvel élément à utiliser : Class table html5

Injectez vos datas directement dans une balise avec options de formatage.

Qu'en pensez-vous ?
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.