AFFICHAGE D'UN TABLEAU HTML À PARTIR D'UN ARRAY

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 - 12 juil. 2004 à 23:26
yann_solo Messages postés 2 Date d'inscription jeudi 5 août 2004 Statut Membre Dernière intervention 18 août 2004 - 1 sept. 2004 à 11:02
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/24484-affichage-d-un-tableau-html-a-partir-d-un-array

yann_solo Messages postés 2 Date d'inscription jeudi 5 août 2004 Statut Membre Dernière intervention 18 août 2004
1 sept. 2004 à 11:02
merci pour ce code sympathique et agreable.
De mon cote j ai enleve tout ce qui concerne le style pour laisser faire le css.
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
14 juil. 2004 à 10:05
Bah tu ne gagnes que quelques centièmes ou millilièmes, mais tout ça mis bout à bout tu allèges quand même ton serveur. Pour les expressions régulières par contre le gain est plus notable.

a +
Vince66 Messages postés 28 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 5 octobre 2011
14 juil. 2004 à 02:06
Voilà des tests interessants... mais est-ce vraiment utile de faire ces changements ? Gagne t'on 1 seconde ou seulement quelques centièmes ? Je ferais un essai.

Par contre, pour le test d'un tableau imposant, je n'ai pas encore de base à exploiter et je me vois mal saisir un tableau de 10 000 lignes :-S

En tout cas, merci pour ton interêt pour mon code, ça fait toujours plaisir.
@+
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
13 juil. 2004 à 23:43
J'ai fait quelques tests :

l'incrémentation en $i+=1 est plus rapide que $i++

les simples quotes sont plus rapides que les doubles quotes, et les virgules sont légèrement encore plus rapides.

a +
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
13 juil. 2004 à 10:56
Sinon pour tester tu fais un array avec une quantité très importante d'éléments (10.000 par exemple) et tu testes les temps de génération avec les scripts dispos sur phpcs, poste ensuite les résultats des différentes méthodes stp ;-)
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
13 juil. 2004 à 10:48
C'est sûr que l'accélération procurée par les simples quotes est plus que négligeable, mais au moins tu es sûr d'avoir le code le plus rapide possible, (et encore je crois que de mettre des virgules à la place des points accélère encore un peu)
Vince66 Messages postés 28 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 5 octobre 2011
13 juil. 2004 à 10:10
Merci pour tes suggestions, encore quelques choses que j'apprend comme le coup des quotes qui accelere (même d'un cheveu) le processus par rapport aux doubles quotes. Même si je reste sceptique sur ce fait, j'ai fait la mise à jour, cela rend le code un peu plus propre :-)
J'ai également enlevé les ereg, tu as raison, il suffit de savoir utiliser la fonction correctement :-P

Pour la gestion des styles j'ai pensé à utiliser une classe STYLE. Je vais essayer de travailler l'idée...
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
13 juil. 2004 à 09:38
oups
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
13 juil. 2004 à 09:31
;-)

Tu peux aussi enlever tous les eregs qui contrôlent les divers pourcentages et alignements, il suffit d'entrer les paramètres correctement dans la fonction. Compares ensuite les deux temps de génération :-)

Et pour accélérer vraiment mais moins qu'un cheveu lol tu peux remplacer les doubles quotes des echo " " par des simples quotes (seulement les echo qui ne contiennent pas les caractères \r\n ou \t\t car ces caractères de retour chariot, retour à la ligne et tabulation ne seront pas interprétés entre les simple quotes, alors qu'entre les doubles quotes ils modifieront le code source final.

Donc quelques echo ou variables à modifier :

$style.='width:'.$size.';';

$style.='text-align:'.$text_align.';';

$style.='border-style:'.$border_style.';';

$style.='border-width:'.$border_width.';';

$style.='border-color:'.$border_color.';';

$style.='background:'.$background.';';

a ++
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
13 juil. 2004 à 09:30
;-)

Tu peux aussi enlever tous les eregs qui contrôlent les divers pourcentages et alignements, il suffit d'entrer les paramètres correctement dans la fonction. Compares ensuite les deux temps de génération :-)

Et pour accélérer vraiment mais moins qu'un cheveu lol tu peux remplacer les doubles quotes des echo " " par des simples quotes (seulement les echo qui ne contiennent pas les caractères \r\n ou \t\t car ces caractères de retour chariot, retour à la ligne et tabulation ne seront pas interprétés entre les simple quotes, alors qu'entre les doubles quotes ils modifieront le code source final.

Donc quelques echo ou variables à modifier :

$style.='width:'.$size.';';

$style.='text-align:'.$text_align.';';

$style.='border-style:'.$border_style.';';

$style.='border-width:'.$border_width.';';

$style.='border-color:'.$border_color.';';

$style.='background:'.$background.';';

a ++
Vince66 Messages postés 28 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 5 octobre 2011
13 juil. 2004 à 07:59
Je voulais ajouter que c'était effectivement dans le cadre du développement d'un forum que j'ai créé cette fonction.
Bien vu ;-)
Vince66 Messages postés 28 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 5 octobre 2011
13 juil. 2004 à 07:56
Salut :)
Je ne savais pas que la casse des balises avait une importance dans la compatibilité du code. Je vais changer ça :-)

Pour la fonction ereg, effectivement ça me semblait un peu lourd mais en même temps je souhaitait faire une fonction relativement souple pour le codeur qui l'utilise.
Mais bon, comme tu dis, ce sera plus rapide sans. Il suffit de faire attention à bien passer les paramètres comme il faut.

Merci pour tes suggestions et tes conseils, je vais mettre à jour tout ça ;-)

@+
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
12 juil. 2004 à 23:26
Salut ;-)

ton code pourrait être utile pour un forum je pense.

Reste juste à le rendre compatible XHTML (commence par mettre le nom des balises en minuscules)

Par contre les fonctions ereg() étant assez gourmandes autant ne pas vérifier si le # est présent, tu mets directement ta couleur avec le # comme ça pas de # à rajouter, moins de code et plus de rapidité ;-)

Ce ne sont que des suggestions :-)

a ++
Rejoignez-nous