Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1378 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/HTML] vaut il mieux : bcp de echo "" ou bcp de balises <?php> ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP/HTML] vaut il mieux : bcp de echo "" ou bcp de balises <?php> ?

n°399486
Masure
Posté le 19-05-2003 à 13:47:24  profilanswer
 

J'ai pas trouvé de débat qui parlait de ça dans mes recherches et j'aimerais bien savoir s'il vaut mieux :
 
- une structure plutot orientee sur une liste d'echo (ou print) pour générer du html
 
ou
 
- au contraire taper que du html et poser des balises php a chaque fois qu'on a besoin de script
 
Peut etre ca depend du rapport qu'on a entre la quantité de code statique (HTML pur) et dynamique (PHP genere le HTML). Dans cette hypothèse il faudait privilégier l'ouverture de balises php quand on a peu de php dans bcp de de html. Inversement, on fait une seule balise php et on genere tout le html en echo (ou print) quand peu de statique par rapport au dynamique...
 
Qu en pensez vous ?

mood
Publicité
Posté le 19-05-2003 à 13:47:24  profilanswer
 

n°399511
harrysauce
Miaaaooou!
Posté le 19-05-2003 à 14:05:16  profilanswer
 

http://forum.hardware.fr/icones/flag1.gif

n°399514
Masure
Posté le 19-05-2003 à 14:06:16  profilanswer
 


 
héhé Masure il a toujours des bonnes questions  :D

n°399524
simogeo
j'ai jamais tué de chats, ...
Posté le 19-05-2003 à 14:11:42  profilanswer
 

il me semble avoir lu (ici même d'ailleurs) que c'était plus rapide d'éviter les ouvertures et fermetures de balises et donc de favoriser les echos de code html
 
AMHA, ca se joue quand même a peu de choses dans une page web classique :/

n°399533
Masure
Posté le 19-05-2003 à 14:16:45  profilanswer
 

Les sources sont vagues mais ça fait toujours un avis sur la question, merci simogeo !
 
Si quun se sent de tester 2 styles de pages (une avec bcp de html et l'autre moins) et les 2 methodes pour chaque page (ouverture et fermeture a chq bout de script php et tout le html en echo). Bien sur il faudra donner le temps de chargement...

n°399535
backdafuck​up
Back to da old skool
Posté le 19-05-2003 à 14:17:30  profilanswer
 

Je n'ai pas une grande expérience, mais personnellement, je préfère utiliser des echos...
 
A part les balises d'en-tete, toutes les autres balises sont inserées dans des echos.
 
En fait, c'est une question de clarté de code. Plus on utilise de php, moins il faut de balises <? ?>.
Le code s'en trouve aéré et lisible, si quelqu'un consulte la source...
A ce moment la, le php prédomine par rapport au html qui effectue juste le lien entre l'utilisateur et le serveur (et les opérations qu'il effectue). C'est de l'affichage. Or, on m'a toujours dit qu'il valait mieux bien séparer les parties concernant l'interface, du reste des traitements...

n°399557
Masure
Posté le 19-05-2003 à 14:26:51  profilanswer
 

Je l'ai pas exprimé dans mon "vaut il mieux" mais je parlais plus de vitesse que de lisibilité. Et j'attend du vrai test et pas des preferences comme reponse.
 
excusez moi de pas avoir bien defini ma question.

n°399572
belgique
Posté le 19-05-2003 à 14:31:02  profilanswer
 

[:drapo]


Message édité par belgique le 19-05-2003 à 14:33:01
n°399576
Sh@rdar
Ex-PhPéteur
Posté le 19-05-2003 à 14:32:09  profilanswer
 

pour ce qui est de la vitesse pure, ça semblerait logique que les echo soient moins rapides, ça file plus de boulot au parseur...
 
maintenant vu les temps sur lesquels on grapille mieux vaut privilégier la lisibilité du code...


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°399578
nero27
Posté le 19-05-2003 à 14:32:30  profilanswer
 

masure a écrit :

Je l'ai pas exprimé dans mon "vaut il mieux" mais je parlais plus de vitesse que de lisibilité. Et j'attend du vrai test et pas des preferences comme reponse.
 
excusez moi de pas avoir bien defini ma question.


Je pense personnellement que les echos prennent plus de temps, étant donné qu'ils doivent être évalués par le parser alors que le HTML est directement lu !
 
EDIT : [:grilled]


Message édité par nero27 le 19-05-2003 à 14:33:06
mood
Publicité
Posté le 19-05-2003 à 14:32:30  profilanswer
 

n°399604
Masure
Posté le 19-05-2003 à 14:40:51  profilanswer
 

@nero27 et shardar :
 
vous evitez une variable a l'interrogation que j'ai formulé  :). Je ne ferais pas les tests que j'ai proposés mais il est possible, quand le script php et tres emmelé avec le html, que les multiples ouvertures et fermeture de balises php aillent moins vite qu'une seule balises avec des echos.
 
Faudrait que je trouve le courage de faire un test avec 2-3 courbes en fonction des types de melange html/php. Mais pas pour le moment :/

n°399692
Sh@rdar
Ex-PhPéteur
Posté le 19-05-2003 à 15:06:01  profilanswer
 

non je pense pas..
 
faire appel à une fonction (ici le echo() ) est forcément plus lourd (même si c'est minime) que de ne pas parser une chaine et de la balancer
 
les processus sont quasi les mêmes mais on économise un appel de fonction...
 
en plus que ce soit emmelé ou pas change rien puisque l'echo remplace juste <? ?>
 
AMHA of course
 
tout ça c'est de la prise de tête sans grand intérêt, ça doit pas jouer sur les perfs d'un script


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°399725
Masure
Posté le 19-05-2003 à 15:13:31  profilanswer
 

Oui mais moi j'aime pas déclarer de l'hypotéhtique...  :o  
 
Et c'est toujours bon a savoir meme si c'est un gain ou une perte de quelques pourcents...

n°399745
gizmo
Posté le 19-05-2003 à 15:20:02  profilanswer
 

ben dans ce cas, tu fais ton html avec un gestionnaire de template (smarty) que tu couples avec un système de caching (celui de zend pour faire "in" ).
 
Et comme ca, tu te casses plus le cul.

n°399951
Masure
Posté le 19-05-2003 à 15:25:36  profilanswer
 

gizmo a écrit :

ben dans ce cas, tu fais ton html avec un gestionnaire de template (smarty) que tu couples avec un système de caching (celui de zend pour faire "in" ).
 
Et comme ca, tu te casses plus le cul.


 
chinois pour moi :/. Je me suis pas encore penché sur le CSS pour tout te dire (d'ailleurs je sais meme pas si ça a qqchose à voir avec ce dont tu me parle  :sweat:, shame on me)
 
edit : oui oui je crois que je suis bien à coté car j'ai associé template avec style sheet alors que ca doit rien avoir a voir...


Message édité par Masure le 19-05-2003 à 15:27:19
n°399965
simogeo
j'ai jamais tué de chats, ...
Posté le 19-05-2003 à 15:31:32  profilanswer
 

masure a écrit :


edit : oui oui je crois que je suis bien à coté car j'ai associé template avec style sheet alors que ca doit rien avoir a voir...


rien :/ mais spa grave .. on est la pour apprendre


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°399984
Sixtiz
Serial glandeur
Posté le 19-05-2003 à 15:39:25  profilanswer
 

Moi je dis que pour la lisibilité, les echo c'est pas top. Dans la pluspart des éditeurs avec coloration syntaxique, on perd la coloration du HTML s'il est dans un echo "code HTML". Et après on se retrouve à ouvrir des balises à l'extérieur des <? ?> et les fermer à l'intérieur, c'est vite le bordel.
 
Je serai donc partisant d'en mettre le plus possible en HTML pur, hors des <? ?>.

n°400014
Masure
Posté le 19-05-2003 à 15:44:52  profilanswer
 

Sixtiz a écrit :

Moi je dis que pour la lisibilité, les echo c'est pas top. Dans la pluspart des éditeurs avec coloration syntaxique, on perd la coloration du HTML s'il est dans un echo "code HTML". Et après on se retrouve à ouvrir des balises à l'extérieur des <? ?> et les fermer à l'intérieur, c'est vite le bordel.
 
Je serai donc partisant d'en mettre le plus possible en HTML pur, hors des <? ?>.


 
j'ai rectifié pour dire qu'on recherchait la vitesse... vous abusez, faut pas avoir bac +0 pour comprendre que le html est plus lisible sans echo. Donc deja pas besoin de le dire, et encore moins de le repeter. Personne n'est flemmard ici  :??: si oui économisez votre énergie.

n°400042
simogeo
j'ai jamais tué de chats, ...
Posté le 19-05-2003 à 15:55:15  profilanswer
 

masure a écrit :


j'ai rectifié pour dire qu'on recherchait la vitesse... vous abusez, faut pas avoir bac +0 pour comprendre que le html est plus lisible sans echo. Donc deja pas besoin de le dire, et encore moins de le repeter. Personne n'est flemmard ici  :??: si oui économisez votre énergie.


 
 ;)  j'approuve complétement


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°400047
urd-sama
waste of space
Posté le 19-05-2003 à 15:57:50  profilanswer
 

[:blueflag]
pour l'asp je ferme mes balises <% %> pour l'html dès que le texte en question dépasse 3-4 éléments.
car en asp ca devient franchement illisible avec les concaténations


Message édité par urd-sama le 19-05-2003 à 15:58:29

---------------
.: Clône de Drasche .:. Ebichuleys .:. Avec l'Aloe Vera je fais de beaux cacas [:dawa] .: www.oserselancer.com :.
n°400065
Sixtiz
Serial glandeur
Posté le 19-05-2003 à 16:04:09  profilanswer
 

masure a écrit :


 
j'ai rectifié pour dire qu'on recherchait la vitesse... vous abusez, faut pas avoir bac +0 pour comprendre que le html est plus lisible sans echo. Donc deja pas besoin de le dire, et encore moins de le repeter. Personne n'est flemmard ici  :??: si oui économisez votre énergie.


Certes, j'avais compris, mais pour ça faudrait faire un vrai test avec des pages codées selon chacune des deux méthodes et comparer les résultats... Mais comme personne ne l'a encore fait, en attendant on meuble  :na:  :whistle:

n°400069
Masure
Posté le 19-05-2003 à 16:04:29  profilanswer
 

C'est tellement bon de soulever des questions techniques intéressantes mais d'un impact assez faible sur les résultats. Si personne le fait ou que personne n'a deja la reponse, ben a la longue je ferais un ptit test. Mais j'ai jamais utilisé les timeticks ou ché plus quoi pour mesurer l'ecart de temps entre le debut d'un script et sa fin.

n°400091
simogeo
j'ai jamais tué de chats, ...
Posté le 19-05-2003 à 16:16:31  profilanswer
 

http://www.phpteam.net/affiche.php?quoi=pear_bench1  :whistle:


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°400102
Masure
Posté le 19-05-2003 à 16:25:36  profilanswer
 


 
Je comptais me documenter et faire ca a la main lors du jour J, mais tu me files un lien mafoi bien sympa avec une classe simple mais cependant utile. Je te remercie simogeo... mais au fait, tu ferais pas ça pour me pousser au bench  ?! :cry: vilain !

n°400107
simogeo
j'ai jamais tué de chats, ...
Posté le 19-05-2003 à 16:28:31  profilanswer
 

masure a écrit :


mais au fait, tu ferais pas ça pour me pousser au bench  ?! :cry: vilain !


 
 :whistle:  
moaaa? nan  [:troa]  
 
 
 
 
 
 
 
 
 
(faut bien que kk'un le fasse  :D )


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°400251
senternal
Posté le 19-05-2003 à 17:32:14  profilanswer
 

Euh, si quelqu'un peut m'expliquer l'interet de mettre 20 echo a la suite, quand on peut fermer la balise php, et la réouvrir 20 lignes + bas. Les personnes qui abusent du echo ou du print (c'est selon...) me font penser a un developpeur qui avait pour IDE préféré MS WORD97.

n°400988
Core 666
Posté le 20-05-2003 à 11:40:27  profilanswer
 

A moins de n'utiliser un serveur asthmatique je pense qu'il n'y a pas vraiment de différence. J'ai fais quelques mesures sur une page en HTML 4.01 sans feuille de style, où chaque attribut COLOR, WIDTH, SIZE et compagnie est indiqué de cette manière :
 
<TR BGCOLOR="<?php echo $theme['thm_cellule_couleur_no2']?>">
 
Puis j'ai testé en balancant des echos entiers de plusieurs lignes, passant ainsi de 2 ou 3 dizaines d'ouvertures/fermetures de balises à 3 ou 4. Bah impossible de voir la moindre différence en mesurant le temps de génération avec 3 décimales après la virgule.
 
Bon, faut dire aussi que j'utilise du PHP compilé, il y a des chances que ca gomme les différences susceptibles d'exister. Mais à mon avis ne compte pas sur ca pour gagner ne serait-ce qu'un centième de seconde par page. Choisi la solution qui apporte le maximum de lisibilité à tes yeux :)

n°401005
Masure
Posté le 20-05-2003 à 11:48:28  profilanswer
 

Core 666 a écrit :

A moins de n'utiliser un serveur asthmatique je pense qu'il n'y a pas vraiment de différence. J'ai fais quelques mesures sur une page en HTML 4.01 sans feuille de style, où chaque attribut COLOR, WIDTH, SIZE et compagnie est indiqué de cette manière :
 
<TR BGCOLOR="<?php echo $theme['thm_cellule_couleur_no2']?>">
 
Puis j'ai testé en balancant des echos entiers de plusieurs lignes, passant ainsi de 2 ou 3 dizaines d'ouvertures/fermetures de balises à 3 ou 4. Bah impossible de voir la moindre différence en mesurant le temps de génération avec 3 décimales après la virgule.
 
Bon, faut dire aussi que j'utilise du PHP compilé, il y a des chances que ca gomme les différences susceptibles d'exister. Mais à mon avis ne compte pas sur ca pour gagner ne serait-ce qu'un centième de seconde par page. Choisi la solution qui apporte le maximum de lisibilité à tes yeux :)


 
cool un temoignage interessant, donc on peut dire que niveau rapidité c'est pareil.
 
PHP compilé, j'avais jamais entendu parler  :??: Mince ca doit etre bien de compiler ses scripts. Tu peux me dire les avantages inconvenients ?

n°401044
Core 666
Posté le 20-05-2003 à 12:08:59  profilanswer
 

masure a écrit :


PHP compilé, j'avais jamais entendu parler  :??: Mince ca doit etre bien de compiler ses scripts. Tu peux me dire les avantages inconvenients ?


Pour les inconvénients ca va être rapide, car il n'y en a pas beaucoup :D Il n'existe aucune solution gratuite fiable, donc pour crypter et précompiler du PHP il faut mettre la main au porte feuille et c'est pas donné. De plus, si tu as l'habitude de bosser directement sur un serveur en production et qu'il faut compiler le code avant chaque upload, pour voir quelques secondes plus tard que tu as laissé un bug ca devient vite lourd. Le dernier inconvénient que je vois c'est la compatibilité : il n'est pas possible chez certains hébergeurs d'utiliser ce type de scripts en mutualisé.
 
Au niveau des avantages, il y en a pas mal. Le premier concerne la sécurité : ce n'est pas réversible, donc personne d'autre que toi n'a accès au code source de tes scripts. Ca permet aussi de limiter les dégats en cas d'intrusion sur le serveur : les mots de passe contenus dans les scripts sont inutilisables. Le code est plus compact (53 Ko contre 67 par exemple) et n'a pas besoin d'être compilé par PHP à chaque exécution : on gagne en temps d'éxecution et en charge machine.
 
Puis ya pas mal d'option sympas qu'on peut ajouter : date d'expiration, spécification des IP ou des plages IP sur lesquelles les scripts ont le droit d'être exécuté, texte clair en header inaltérable (pratique pour mettre une licence ...), bref, ca devient rapidement indispensable :)
 
Voila a quoi ca ressemble si tu n'en a jamais vu :
 
http://coreamp.online.fr/divers/inscription_php_compile.png


Message édité par Core 666 le 20-05-2003 à 12:09:13
n°401047
Sh@rdar
Ex-PhPéteur
Posté le 20-05-2003 à 12:09:54  profilanswer
 

l'avantage n°1 de compiler c'est que personne ne peux récupérer tes sources
 
les deux "standards" sont Zend et IonCube qui proposent des outils de compilation, la dll de "décompilation" qui permet d'éxécuter le script est gratuite et il faut la placer sur le serveur.
 
j'avais fait un topic là dessus y'a un moment mais c'est parti en bide :/
 
> Core 666  
t'utilises quel système ?  
t'es hébergé chez qui ?


Message édité par Sh@rdar le 20-05-2003 à 12:11:47

---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°401056
belgique
Posté le 20-05-2003 à 12:17:15  profilanswer
 

LA compilation est payante et l'exécution non c'est ça.. Enfin si c'est payant :(

n°401058
Masure
Posté le 20-05-2003 à 12:18:41  profilanswer
 

Merci a tous  :hello:

n°401060
simogeo
j'ai jamais tué de chats, ...
Posté le 20-05-2003 à 12:19:48  profilanswer
 

masure a écrit :

Merci a tous  :hello:  


 
tu as essayé la classe de bench ?


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°401064
Core 666
Posté le 20-05-2003 à 12:24:43  profilanswer
 

Sh@rdar a écrit :

> Core 666  
t'utilises quel système ?  
t'es hébergé chez qui ?


J'ai acheté un dédié chez OVH, et j'utilise la solution proposée par Ioncube, car elle n'a que des avantages sur celle de Zend :
 
 

  • L'encodeur est moins couteux
  • Il est plus complet (les headers sont plus personnalisables, et Zend ne propose pas de restriction / IP)
  • L'encoder Ioncube n'impose pas de modification du php.ini (possibilité d'utiliser les scripts encodés sur du mutualisé)
  • Et surtout il est beaucoup plus performant : les temps de génération que l'on peut observer sont identiques, mais il charge beaucoup moins la machine (load average 30% inférieur observé sur une période de 48h sur un site qui fait 300 000 pages vues par jour)


Je crois en plus (mais à vérifier, j'suis pas sûr) que Zend Optimizer n'est pas compatible avec l'excellent PHPA.


Message édité par Core 666 le 20-05-2003 à 12:27:35
n°401199
Masure
Posté le 20-05-2003 à 13:46:26  profilanswer
 

simogeo a écrit :


 
tu as essayé la classe de bench ?


 
J'ai regardé le code quand tu m as donné le lien hier. Comme je disais c'est tres simple, ca facilite juste la mise en place de point de chronométrage en fait mais c'est bien sympa.
 
Pour faire le bench par contre je suis pas super chaud pour plusieurs raisons :
 
1) les 2 syntaxes auront quasiement les meme perfs (surtout qd on comparera les temps d'exec avec un temps d'exec de requete sur une base)
2) je suis en stage et le week end j'ai pas trop envie de tester chez moi, sachant que j'ai plus de server.
 
enfin voila koi...

n°401203
simogeo
j'ai jamais tué de chats, ...
Posté le 20-05-2003 à 13:49:43  profilanswer
 

oki,
j'ai regardé aussi son fonctionnement mais ca fait chier de faire le test .. alors que j'en ai pas vraiment l'utilité pour le moment  [:spamafote]  
s'tait pour savoir, merci  :hello:


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/HTML] vaut il mieux : bcp de echo "" ou bcp de balises <?php> ?

 

Sujets relatifs
[PHP] Accents dans une chaine de caractère[HTML] probleme de background de cellule sous NETSCAPE
[HTML] Mise en forme : question idioteEmails en HTML
[VB] Comment afficher une page html en cliquant sur un bouton ?Generation de pages html
chat vocal en PHP[PHP] Céline a un problème complexe ! Aidez la SVP ! ;o)
[PHP] magic_quotes_runtime à off[PHP] session_id retourne l'ID de la session en cours !!! explication
Plus de sujets relatifs à : [PHP/HTML] vaut il mieux : bcp de echo "" ou bcp de balises <?php> ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR