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

  FORUM HardWare.fr
  Programmation
  PHP

  mise en page du code...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

mise en page du code...

n°624324
cinezone
Posté le 28-01-2004 à 22:14:32  profilanswer
 

Je voudrai savoir si il est mieux de faire  
 

Code :
  1. echo'<table width="100%">';
  2. echo' <tr>';
  3. echo'  <td id="titre">'.TIMESTAMP.'</td>';
  4. echo'  <td id="titre">'.ELAPSED.'</td>';
  5. echo'  <td id="titre">'.CLIENT.'</td>';
  6. echo'  <td id="titre">'.IDENT.'</td>';
  7. echo'  <td id="titre">'.ACTION.'</td>';
  8. echo'  <td id="titre">'.SIZE.'</td>';
  9. echo'  <td id="titre">'.METHOD.'</td>';
  10. echo'  <td id="titre">'.URL.'</td>';
  11. echo'  <td id="titre">'.HIERARCHY_FROM.'</td>';
  12. echo'  <td id="titre">'.CONTENT_TYPE.'</td>';


 
ou

Code :
  1. echo'<table width="100%">
  2. <tr>
  3. <td id="titre">'.TIMESTAMP.'</td>
  4. <td id="titre">'.ELAPSED.'</td>
  5. <td id="titre">'.CLIENT.'</td>
  6. <td id="titre">'.IDENT.'</td>
  7. <td id="titre">'.ACTION.'</td>
  8. <td id="titre">'.SIZE.'</td>
  9. <td id="titre">'.METHOD.'</td>
  10. <td id="titre">'.URL.'</td>
  11. <td id="titre">'.HIERARCHY_FROM.'</td>
  12. <td id="titre">'.CONTENT_TYPE.'</td>';


 
Je trouve la 1ere solution plus lisible mais une fois le code converti en html si on affiche la source on a tout le code sur une ligne au lieu de l'avoir bien affiché... (tjs avec la 1ere solution)
 
Vous faites comment de votre côté ??

mood
Publicité
Posté le 28-01-2004 à 22:14:32  profilanswer
 

n°624327
neogally
Battle Angel Alita
Posté le 28-01-2004 à 22:16:08  profilanswer
 

jutilise la premiere solution avec des '\n' a la fin
 
mais ca m'interesse


Message édité par neogally le 28-01-2004 à 22:16:21

---------------
Battle Alita Angel
n°624329
kadreg
profil: Utilisateur
Posté le 28-01-2004 à 22:18:56  profilanswer
 

Code :
  1. <table width="100%">
  2.   <tr>
  3.    <td id="titre"> <?= TIMESTAMP ?></td>
  4.    <td id="titre"><?= ELAPSED ?></td>
  5.    <td id="titre"><?= CLIENT ?></td>
  6.    <td id="titre"><?= IDENT ?></td>
  7.    <td id="titre"><?= ACTION ?></td>
  8.    <td id="titre"><?= SIZE ?></td>
  9.    <td id="titre"><?= METHOD ?></td>
  10.    <td id="titre"><?= URL ?></td>
  11.    <td id="titre"><?= HIERARCHY_FROM ?></td>
  12.    <td id="titre"><?= CONTENT_TYPE ?> </td>


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°624333
cinezone
Posté le 28-01-2004 à 22:21:24  profilanswer
 

d'accord avec toi kadreg mais regardes la suite du code... (j'aurai du la mettre dés le début)
 

Code :
  1. $file = fopen("log.log", "r" ); /* Ouverture du fichier */
  2.  while ($line = fgetcsv($file,1000, " " )) {
  3.   $line[0] = strftime("%d-%m-%Y @ %Hh%M" , $line[0]); /* date Unix (secondes depuis le 1er Janvier 1970)  vers date compréhensible */
  4.   $line[4] = $line[4] / 1024; /* Conversion de octets à Ko */
  5.   $line[4] = round($line[4] , 2); /* Arrondit le nombre à 2 décimales */
  6. echo' <tr>';
  7. echo'  <td id="data">'.$line[0].'</td>';
  8. echo'  <td id="data">'.$line[1].' '.MS.'</td>';
  9. echo'  <td id="data">'.$line[2].'</td>';
  10. echo'  <td id="data">'.$line[7].'</td>';
  11. echo'  <td id="data">'.$line[3].'</td>';
  12. echo'  <td id="data">'.$line[4].' '.SIZE_FORMAT.'</td>';
  13. echo'  <td id="data">'.$line[5].'</td>';
  14. echo'  <td id="data">'.$line[6].'</td>';
  15. echo'  <td id="data">'.$line[8].'</td>';
  16. echo'  <td id="data">'.$line[9].'</td>';
  17. echo' </tr>';
  18.  };
  19. echo '</table>';


 
ça va être chiant surtout pour la boucle si je suis ta méthode.

n°624335
cinezone
Posté le 28-01-2004 à 22:26:03  profilanswer
 

neogally a écrit :

jutilise la premiere solution avec des '\n' a la fin
 
mais ca m'interesse


 
ton \n tu le mets à quel niveau ?? parceque si je fais

Code :
  1. echo'<td id="titre">'.TIMESTAMP.'</td>'; \n


j'ai une erreur et si je fais

Code :
  1. echo'<td id="titre">'.TIMESTAMP.'</td> \n';


Il m'affiche le \n en texte dans la page.

n°624339
*syl*
--&gt; []
Posté le 28-01-2004 à 22:31:53  profilanswer
 

>Il m'affiche le \n en texte dans la page.  
J'ai pas lu ton sujet mais sur ce pb c'est qu'il faut mettre des " et pas des ' sinon le \n n'est pas interprété, pareil pour les variables..

n°624343
cinezone
Posté le 28-01-2004 à 22:35:12  profilanswer
 

Oui en effet je viens d'y penser avant de lire ta réponse mais c'est encore plus chiant car il faudra mettre des \ devant tous les " comme

Code :
  1. echo"<td id=\"titre\">TIMESTAMP</td> \n";

n°624345
gizmo
Posté le 28-01-2004 à 22:37:55  profilanswer
 

kadreg a écrit :

Code :
  1. <table width="100%">
  2.   <tr>
  3.    <td id="titre"> <?= TIMESTAMP ?></td>
  4.    <td id="titre"><?= ELAPSED ?></td>
  5.    <td id="titre"><?= CLIENT ?></td>
  6.    <td id="titre"><?= IDENT ?></td>
  7.    <td id="titre"><?= ACTION ?></td>
  8.    <td id="titre"><?= SIZE ?></td>
  9.    <td id="titre"><?= METHOD ?></td>
  10.    <td id="titre"><?= URL ?></td>
  11.    <td id="titre"><?= HIERARCHY_FROM ?></td>
  12.    <td id="titre"><?= CONTENT_TYPE ?> </td>




[+1]

n°624346
*syl*
--&gt; []
Posté le 28-01-2004 à 22:38:12  profilanswer
 

et bah tu fais une concaténation stout

n°624361
cinezone
Posté le 28-01-2004 à 23:02:31  profilanswer
 

J'ai lu quelques docs et j'ai trouvé que la façon <?= TEXTE; ?> était la meilleur donc pour ça +1. Mais maintenant comment je fais pour utiliser cette méthode dans ma boucle ???

mood
Publicité
Posté le 28-01-2004 à 23:02:31  profilanswer
 

n°624404
seb-belfor​t
Posté le 29-01-2004 à 00:00:28  profilanswer
 

je vais peut etre jouer mon gros boulay mais c'est quoi ces variables en majuscules sans $ ? des variables d'environnement ? c'est pt etre con mais je connais pas ...  :sweat:

n°624406
chriscool0​07
Posté le 29-01-2004 à 00:01:09  profilanswer
 

Code :
  1. <?PHP
  2. $file = fopen("log.log", "r" ); /* Ouverture du fichier */
  3.     while ($line = fgetcsv($file,1000, " " )) {
  4.        $line[0] = strftime("%d-%m-%Y @ %Hh%M" , $line[0]); /* date Unix (secondes depuis le 1er Janvier 1970)  vers date compréhensible */
  5.        $line[4] = $line[4] / 1024; /* Conversion de octets à Ko */
  6.        $line[4] = round($line[4] , 2); /* Arrondit le nombre à 2 décimales */
  7. ?>
  8.     <tr>
  9.      <td id="data"><? =$line[0];?></td>
  10.      <td id="data"><? =$line[1];?>MS</td>
  11.      <td id="data"><? =$line[2];?></td>
  12.      <td id="data"><? =$line[7];?></td>
  13.      <td id="data"><? =$line[3];?></td>
  14.      <td id="data"><? =$line[4];?>SIZE_FORMAT</td>
  15.      <td id="data"><? =$line[5];?></td>
  16.      <td id="data"><? =$line[6];?></td>
  17.      <td id="data"><? =$line[8];?></td>
  18.      <td id="data"><? =$line[9];?></td>
  19.     </tr>
  20. <?PHP
  21.     }
  22. ?>
  23.   </table>


Message édité par chriscool007 le 29-01-2004 à 00:07:07
n°624412
chriscool0​07
Posté le 29-01-2004 à 00:05:09  profilanswer
 

ou alors :  
 

Code :
  1. echo <<<HTML
  2. <tr>
  3.     <td id="data">$line[0]</td>
  4.     <td id="data">$line[1] MS</td>
  5.     <td id="data">$line[2]</td>
  6.     <td id="data">$line[7]</td>
  7.     <td id="data">$line[3]</td>
  8.     <td id="data">$line[4] SIZE_FORMAT</td>
  9.     <td id="data">$line[5]</td>
  10.     <td id="data">$line[6]</td>
  11.     <td id="data">$line[8]</td>
  12.     <td id="data">$line[9]</td>
  13. </tr>
  14. HTML;

n°624416
simogeo
j'ai jamais tué de chats, ...
Posté le 29-01-2004 à 00:06:08  profilanswer
 

seb-belfort a écrit :

je vais peut etre jouer mon gros boulay mais c'est quoi ces variables en majuscules sans $ ? des variables d'environnement ? c'est pt etre con mais je connais pas ...  :sweat:  


ce sont des constantes définies par l'utilisateur  :)


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°624508
KdZ'
Simple®
Posté le 29-01-2004 à 02:06:55  profilanswer
 

Ah tient moi je faisait toujours  
<?=$var; ?>
:??:


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
n°624515
MagicBuzz
Posté le 29-01-2004 à 02:34:02  profilanswer
 

Moi je suis plutôt du genre XSL joli qui s'applique à la volée sur un flux XML généré par le prog.

n°624532
kadreg
profil: Utilisateur
Posté le 29-01-2004 à 08:00:09  profilanswer
 

Moi j'instancie un bean avec un <jsp:useBean>; puis j'affiche ses propriétés avec un <jsp:getProperty>, et c'est ce bean qui est chargé d'aller faire la lecture du CSV.


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°624542
cinezone
Posté le 29-01-2004 à 08:34:00  profilanswer
 

ok donc si j'ai bien compris c'est mieux d'ouvrir et fermer à chaque fois la balise php (<?php ?> ) plutot que de faire plein d' echo ou un seul grqnd echo.
 
Pour les textes en majuscules sans $ en effet c'est des constantes mqis j'ai changé avec des variables car j'ai lu que c'était plus rapide d'utiliser ces dernières.

n°624579
ratibus
Posté le 29-01-2004 à 10:08:24  profilanswer
 

Ca permet aussi qd tu bosses avec un graphiste, de lui permettre de voir le code HTML sous Dreamweaver par exemple.
En fait en externatlisant le HTML du PHP, ça lui facilite énormément le boulot.

n°624918
MagicBuzz
Posté le 29-01-2004 à 14:44:12  profilanswer
 

Et dans l'autre sens aussi ça facilite le boulot.
 
Tu peux aisément repartir d'un bloc de HTML static et remettre tes valeurs dedans sans modifier le code.

n°625092
cinezone
Posté le 29-01-2004 à 16:56:15  profilanswer
 

Voilà j'ai suivi vos conseils et ça fonctionne impec.
 
Sinon comme je l'ai dis plus haut, il parait que les define() sont plus longs à "charger" que des variables mais je ne sais pas dans quelle version de php ni si ça a été règlé.
 
Quelqu'un peut m'en dire plus ?? (si les define sont plus lent ça n'a aucun intéret)

n°625134
*syl*
--&gt; []
Posté le 29-01-2004 à 17:30:20  profilanswer
 

cinezone a écrit :

Voilà j'ai suivi vos conseils et ça fonctionne impec.
 
Sinon comme je l'ai dis plus haut, il parait que les define() sont plus longs à "charger" que des variables mais je ne sais pas dans quelle version de php ni si ça a été règlé.
 
Quelqu'un peut m'en dire plus ?? (si les define sont plus lent ça n'a aucun intéret)

T'es pas assez grand pour tester toi même ? :pfff:

n°625153
MagicBuzz
Posté le 29-01-2004 à 17:45:49  profilanswer
 

Sinon, je reste bouche bée devant ce qui est plus rapide en PHP par rapport à ce qui est moins rapide... En effet, je trouve ça relativement contradictoire avec son fonctionnement. Certainement le résultat d'une grosse optimisation de ce qui est régulièrement utilisé en dépis de ce qui l'est moins. En effet, généralement, on a plutôt le comportement inverse :
 
<?
...
...
...
...
...
...
?>
 
=> Le moteur PHP se lance une unique fois pour tout le bloc, et traîte les variables directement.
 
<?=...?>
<?=...?>
<?=...?>
<?=...?>
<?=...?>
<?=...?>
 
=> Le moteur PHP est initialisé à chaque bloc, et doit en permanance backuper et récupérer les variables de travail.
 
Du moins, c'est le fonctionnement de l'ASP (dont le fonctionnement est logiquement "le même" )
Microsoft préconise pour l'ASP d'utiliser au minimum des blocs éparses d'ASP, et préfère qu'un maximum d'instructions/traîtements soient faites au même endroit.
 
Ensuite, on a les constantes... Habituellement, une constante est de taille fixe, de type connu, et ne peux pas évoluer. Alors qu'en PHP tout comme en ASP, les variables sont de type variable (on peut passer d'une chaîne à un int puis une date sans se soucier de rien), et de taille variable (le symple transtypage suffit à changer la taille). A partir de là, on pourrait s'attendre à des traîtements bien plus complexes, et une interprétation bien plus "sécurisée" des variables que des constantes, puisqu'on connaît à l'avance le comportement d'une constante (elle risque pas de faire péter quoi que ce soit) alors qu'une variable peut partir en live, provoquer des erreurs de type, etc.
 
Du coup, je trouve ça vraiment paradoxal le fait que le PHP soit plus rapide pour traîter ces deux trucs qui pourtant à la base sont bien moins complexes à éxécuter... !
Pas vous ?

n°625166
cinezone
Posté le 29-01-2004 à 17:53:29  profilanswer
 

*Syl* a écrit :

T'es pas assez grand pour tester toi même ? :pfff:  


 
Je voudrai bien mais je fais comment pour tester ?

n°625168
simogeo
j'ai jamais tué de chats, ...
Posté le 29-01-2004 à 17:53:57  profilanswer
 

en marquant tes temps d'éxecution [:petrus75]


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°625188
Sh@rdar
Ex-PhPéteur
Posté le 29-01-2004 à 18:10:35  profilanswer
 

kadreg a écrit :

Code :
  1. <table width="100%">
  2.   <tr>
  3.    <td id="titre"> <?= TIMESTAMP ?></td>
  4.    <td id="titre"><?= ELAPSED ?></td>
  5.    <td id="titre"><?= CLIENT ?></td>
  6.    <td id="titre"><?= IDENT ?></td>
  7.    <td id="titre"><?= ACTION ?></td>
  8.    <td id="titre"><?= SIZE ?></td>
  9.    <td id="titre"><?= METHOD ?></td>
  10.    <td id="titre"><?= URL ?></td>
  11.    <td id="titre"><?= HIERARCHY_FROM ?></td>
  12.    <td id="titre"><?= CONTENT_TYPE ?> </td>




 
+12


---------------
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°625326
cinezone
Posté le 29-01-2004 à 20:25:14  profilanswer
 


 
Tcheu directement +12 ça doit vraiment être une très bonne solution :lol:


Message édité par cinezone le 29-01-2004 à 20:25:47
mood
Publicité
Posté le   profilanswer
 


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

  mise en page du code...

 

Sujets relatifs
Recupération d'un numéro de Code a Barre dans une chaine EBCDIC[RESOLU] Insertion d'une page php dans une page jsp
Page généré en jspProteger son code PHP
[Impression] Page Web sur imprimante noir & blancimpresion d'une page html
[HTML] Comment on fait une tabulation en code HTML ??Comment mettre des photos en miniature sur une page
Mise en page de Code (Java)mise en page du code java
Plus de sujets relatifs à : mise en page du code...


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