[PHP] Schone broncode?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Zoals de meesten zullen doen is in de bron van mijn PHP-bestanden het e.e.a. als volgt opgemaakt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php

for ($i=0;$i<10;$i++) {
   print<<<EOF
      <p>hoi $i voorbeeld...</p>
      <table width="0" height="0" border="0">
       <tr>
        <td>test<td>
        <td>blaat</td>
       </tr>
      </table>
EOF;
}

?>

De uiteindelijke code in HTML is dan:
code:
1
2
3
4
5
6
7
      <p>hoi $i voorbeeld...</p>
      <table width="0" height="0" border="0">
       <tr>
        <td>test<td>
        <td>blaat</td>
       </tr>
      </table>

Ik wil graag mijn PHP code in deze opmaak houden, echter de html wil ik als volgt uitgevoerd hebben:
code:
1
2
<p>hoi $i voorbeeld...</p><table width="0" height="0"
border="0"><tr><td>test<td><td>blaat</td></tr></table>

Op welke manier kan ik dat het beste realiseren? Alles eerst naar een variabele wegschrijven en dan "schoonmaken" en dan pas printen lijkt me niet de meest geschikte optie, dus ik hoop dat er nog andere mogelijkheden zijn??

Acties:
  • 0 Henk 'm!

  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 22-07-2024
wat je kan doen is een functie schrijven die alle spaties er uit ript en maar 1x in de xx karakters een enter geeft (wanneer het kan natuurlijk)

dan moet je dus alles waar je normaal printf gebruikt of echo nu via die functie doen

voorbeeldje:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php

for ($i=0;$i<10;$i++) {
   print<<<EOF
      <p>hoi $i voorbeeld...</p>
      <table width="0" height="0" border="0">
       <tr>
        <td>test<td>
        <td>blaat</td>
       </tr>
      </table>
EOF;
}

?>

word dan:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php

function strip_spaces($meuk)
{
  [..]
  leuke stringreplace ofzo 
  [..]
  echo $meuk; 
}

for ($i=0;$i<10;$i++) {
   strip_spaces("<p>hoi $i voorbeeld...</p>
      <table width="0" height="0" border="0">
       <tr>
        <td>test<td>
        <td>blaat</td>
       </tr>
      </table>");
}

?>

[ Voor 58% gewijzigd door BasieP op 17-05-2004 22:04 ]

This message was sent on 100% recyclable electrons.


Acties:
  • 0 Henk 'm!

  • Xenon
  • Registratie: Januari 2001
  • Laatst online: 21-08 09:12
Gewoon je html meuk in php tussen " " zetten en gewoon echo " ... ";
gebruiken

ProtocoLAN.be: De beste LAN van de Maaskant


Acties:
  • 0 Henk 'm!

  • Osiris
  • Registratie: Januari 2000
  • Niet online
Xenon schreef op 17 mei 2004 @ 22:02:
Gewoon je html meuk in php tussen " " zetten en gewoon echo " ... ";
gebruiken
Vergeet dan niet te vermelden dat hij " in de HTML moet escapen (\") ;)

Acties:
  • 0 Henk 'm!

  • Firefly III
  • Registratie: Oktober 2001
  • Niet online

Firefly III

Bedrijfsaccount Firefly III
-

[ Voor 117% gewijzigd door Firefly III op 05-03-2016 15:10 . Reden: Leeg vanwege privacy. ]

Hulp nodig met Firefly III? ➡️ Gitter ➡️ GitHub ➡️ Mastodon


Acties:
  • 0 Henk 'm!

  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 22-07-2024
Xenon schreef op 17 mei 2004 @ 22:02:
Gewoon je html meuk in php tussen " " zetten en gewoon echo " ... ";
gebruiken
Osiris schreef op 17 mei 2004 @ 22:03:
[...]

Vergeet dan niet te vermelden dat hij " in de HTML moet escapen (\") ;)
Slarioux schreef op 17 mei 2004 @ 22:03:
Doe dan echo '...', dan ben je nog ietsje cleaner in mijn ogen ;)

PHP:
1
 echo 'Hallo, ik ben een var: '.$var.'!';
ik geloof niet dat de TS problemen heeft met het echo'en van vars... :X
als jij een (grote)table via php wilt echo'en heb je daarvoor een berg html code nodig die je in je output verhaaltje moet zetten
elke nieuwe cel heeft immers een <TD></TD> nodig.. die moet je dus sowieso al echo'en

zo kan je dus niet dit doen:
PHP:
1
2
3
4
5
<table>
  <TR>
    <TD><? echo $var; ?></TD>
  </TR>
</TABLE>

This message was sent on 100% recyclable electrons.


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

of je gebruikt een Output Buffer waarna je de enters en overtollige spaties verwijderd.
Hoewel ik zelf altijd met "simpele" templates werkt :)

[ Voor 19% gewijzigd door Erkens op 17-05-2004 22:09 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Slarioux schreef op 17 mei 2004 @ 22:03:
Doe dan echo '...', dan ben je nog ietsje cleaner in mijn ogen ;)

PHP:
1
 echo 'Hallo, ik ben een var: '.$var.'!';
Doe dan printf.

Acties:
  • 0 Henk 'm!

Verwijderd

printf, echo, kwestie van voorkeur...

PHP is toch een slap C(++) aftreksel. Of je nou prinf of echo gebruikt; 't blijft een vies taaltje :Y)
Nu niet gaan preken over de kracht door haar eenvoud... :|

.modbreak: bedankt voor deze totaal nutteloze bijdrage. Reageer mbt het onderwerp of reageer gewoon niet :/

[ Voor 27% gewijzigd door .oisyn op 17-05-2004 22:59 ]


Acties:
  • 0 Henk 'm!

Verwijderd

BasieP schreef op 17 mei 2004 @ 22:08:
[...]
zo kan je dus niet dit doen:
PHP:
1
2
3
4
5
<table>
  <TR>
    <TD><? echo $var; ?></TD>
  </TR>
</TABLE>
Jazeker wel
PHP:
1
2
3
4
5
6
7
8
9
10
11
<table>
<?
for ($i=0; $i<10; $i++) {
?>
  <tr>
    <td><?='Item nr. '.$i?></td>
  </tr>
<?
}
?>
</table>

En kijk eens hoe mooi je output is :)

Acties:
  • 0 Henk 'm!

Verwijderd

quote]Hdez schreef op 17 mei 2004 @ 22:51:
Jazeker wel
PHP:
1
2
3
4
5
6
7
8
9
10
11
<table>
<?
for ($i=0; $i<10; $i++) {
?>
  <tr>
    <td><?='Item nr. '.$i?></td>
  </tr>
<?
}
?>
</table>

En kijk eens hoe mooi je output is :)[/quote]

Ik zou nog wel echo"" erbij gebruiken anders heb je zo weinig output en nog een foutmelding ook he... :Y)

Acties:
  • 0 Henk 'm!

  • creative8500
  • Registratie: September 2001
  • Laatst online: 01-02 14:14

creative8500

freedom.

Verwijderd schreef op 17 mei 2004 @ 23:08:
Ik zou nog wel echo"" erbij gebruiken anders heb je zo weinig output en nog een foutmelding ook he... :Y)
Volgens mij moet jij nog even de PHP-manual nalezen. :)

[ Voor 42% gewijzigd door creative8500 op 17-05-2004 23:10 ]


Acties:
  • 0 Henk 'm!

  • lo3k
  • Registratie: Februari 2002
  • Laatst online: 08-05-2024
Waarom wil je dit eigenlijk doen?
Ik kan zo snel geen nuttige toepassing bedenken?

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

CroitiX schreef op 17 mei 2004 @ 23:11:
Waarom wil je dit eigenlijk doen?
Ik kan zo snel geen nuttige toepassing bedenken?
Compact houden van de resulterende HTML misschien, waardoor het sneller verstuurd kan worden?
Vind het niet opwegen tegen de leesbaarheid die je totaal verneukt door te willen wat TS wil... :?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

Verwijderd

Een soort van ego gedreven drang naar twijfelachtige code optimalisaties veronderstel ik. Het waarom vat ik ook niet echt al denk ik dat het meer kans heeft om bugs te introduceren dan dat het ook maar een voordeel brengt. En natuurlijk is het opsporen van dergelijke bugs een 100% verspilling van resources.

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-09 08:50

gorgi_19

Kruimeltjes zijn weer op :9

Kan je niet beter HTTPCompressie gebruiken? Levert dit niet meer bandbreedte besparing op? De iets hogere load kan je vervolgens wel afvangen met caching van (bepaalde gedeelten van) pagina's.

* gorgi_19 vindt het onzin om complete output code te vernaggelen.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 15:29

crisp

Devver

Pixelated

je kan beter HTTP compressie gebruiken als het je om bandbreedte gaat...

offtopic:
grrr, gorgi weer... :( :*

[ Voor 23% gewijzigd door crisp op 17-05-2004 23:33 ]

Intentionally left blank


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

NMe84 schreef op 17 mei 2004 @ 23:27:
[...]

Compact houden van de resulterende HTML misschien, waardoor het sneller verstuurd kan worden?
Vind het niet opwegen tegen de leesbaarheid die je totaal verneukt door te willen wat TS wil... :?
nou, als je een site hebt met erg veel hits, dan kan je door die paar bytes per req. aardig veel besparen op datatraffic ;)

Acties:
  • 0 Henk 'm!

  • Johnny
  • Registratie: December 2001
  • Laatst online: 14:39

Johnny

ondergewaardeerde internetguru

NMe84 schreef op 17 mei 2004 @ 23:27:
[...]

Compact houden van de resulterende HTML misschien, waardoor het sneller verstuurd kan worden?
Vind het niet opwegen tegen de leesbaarheid die je totaal verneukt door te willen wat TS wil... :?
PHP:
1
ob_start("ob_gzhandler");

;) Zet dit bovenaan je PHP bestanden en het geheel wordt via HTTP compressie verstuurd waardoor soms tot 90% kleinere HTML bestanden verstuurd terwijl je code bij de client nog helemaal leesbaar is.

Gorhi en crisp weer :( gelukkig gaf ik wel als eerste de PHP code :)

[ Voor 8% gewijzigd door Johnny op 17-05-2004 23:39 ]

Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Erkens schreef op 17 mei 2004 @ 23:33:
[...]

nou, als je een site hebt met erg veel hits, dan kan je door die paar bytes per req. aardig veel besparen op datatraffic ;)
Zie gorgi en crisp, met wie ik het helemaal eens ben. Maar ik zie geen andere reden om zo'n vage functie te gaan schrijven die niet meer doet dan wat overbodige bytes weghalen....

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 15:29

crisp

Devver

Pixelated

sowieso, als je het al wilt doen doe het dan achteraf en zorg er ook voor dat je het voor debugging weer uit kan zetten...

Intentionally left blank


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

NMe84 schreef op 17 mei 2004 @ 23:39:
[...]

Zie gorgi en crisp, met wie ik het helemaal eens ben. Maar ik zie geen andere reden om zo'n vage functie te gaan schrijven die niet meer doet dan wat overbodige bytes weghalen....
die hadden dat in dezelfde minuut gepost ;)
en dan nog:
Pagina: 1