Primerjava dveh kod

Koda1:
<?php
if (isset($POST['debug']) and $POST['debug'] == "on") {
?>
<pre>
<?php
printr($POST);
?>
</pre>
<?php
}
?>

Koda2

<?php
if (isset($POST['debug']) and $POST['debug'] == "on") {
echo "<pre>";
printr($POST);
echo "</pre>";
}
?>

Eno noobie vprašanje... Zakaj je boljša 1. koda?

10 odgovorov

Obe naredita popolnoma enako, zakaj bi bila prva boljša?

Boljša naj bi bila zato, ker jo piše profi, vendar se meni zdi bolj komplicirana/nepregledna v primerjavi s kodo2 in ne vem zakaj jo pol profi piše - se prav naj bi imela neke meni neznane prednosti/bila boljša?!

Meni je druga boljša, ker je bolj pregledna, je pa to odvisno od posameznika.

Odvisno od primera.
Recimo, prva koda je bolj priročna, če imaš veliko HTML kode in jo je lažje pomešati.

mislim, da sta obe enako dobri, prva je prikaz z html ukazi, druga pa je
prikaz v php bloku, vse odvisno od kompleksnosti in kombinacije s skriptom
in seveda okusa ali načina kako to pišeš

Prva ti verjetno prihrani nekaj procesorskih ciklov.

Sama koda nima prednosti, prednosti se pojavijo takrat, ko gre za več vrstic, kot da bi v nek html template vključeval php kodo, ali boš cel template izpisoval s pomočjo PHPja, verjetno je to tudi mislil tisti profi. Če pa pogledaš v tiste desetinke sekunde, pa je zopet vprašanje, kaj je bolje in hitreje, ali procesiranje html kode s pomočjo PHPja, ali samo rendranje htmlja pa vključevanje procesiranja phpja vmes.

http://www.webmasterworld.com/forum88/3253.htm

ma 1. koda je na hitrco uporabna. Ker če maš že eno stran izdelano sam namečeš par php stavkov notr, ne da greš delat celoten template zanjo. Je pa res da je 2. veliko bolj pregledna, če uporabljaš smarty ali kak podoben template system. Tako da ločuješ html od phpja kar je priporočljivo zaradi same preglednosti, pa tudi da ne mešaš jezikov.

V tem primeru je za mene druga vsekakor boljša ker je bol pregledna in manj komplicira.

vprašanje tud kaj več "košta" cpu-ja, preklapljanje med php kodo in ne php kodo al en echo.

Je pa to tako simpl primer da je iz tega težko rečt da zarad tega profi "slabši programer" kot tadrug, tuki se vid samo neka osebna stilska preferenca.

še bolj pregledno:

<?php if (isset($POST['debug']) && $POST['debug'] == "on"): ?>
<pre>
<?php printr($POST); ?>
</pre>
<?php endif; ?>

;)