Autor Zpráva
Werewolf
Profil
Zdravím, nechci používat short open tag jako v titulku, ale také nechci psát
<?php echo($promenna); ?>

místo
<?=$promenna; ?>
.
Existuje nějaký podobný zápis, který bych mohl použít? Díky
Shadowek
Profil
myslím že ne
Europsky_Dzigolo
Profil
print_r ci jak sa to pise?:D
Alphard
Profil
Nic mě nenapadá, můžete si ušetřit akorát tu závorku, echo ji nevyžaduje.
Ve větších projekech se využívají šablony, takže to vypadá třeba takhle {$promenna}.

Europsky_Dzigolo:
print_r vypíše pole, ale nemyslím, že jde tazateli o tohle.
tiso
Profil
Werewolf: Potom ti zostáva len použitie špeciálnych značiek a následné spracovanie skriptom, viď rôzne šablónovacie systémy.
Werewolf
Profil
Dobrá, díky, pro tento účel budu používat short open tag...
Nox
Profil
Werewolf
A pak přepisovat celý systém až to bude třeba dát někam, kde toto není povoleno?

Co třeba si dát prostě klávesovou zkratku na <?php echo |?> ?
Např. v PSPadu to jde editací šablon
Str4wberry
Profil
A pak přepisovat celý systém až to bude třeba dát někam, kde toto není povoleno?

Na druhou stranu, je to vůbec někde nepovoleno? :–) Navíc by v takovém teoretickém případě vůbec nebyl problém to hromadně nahradit.
DoubleThink
Profil *
Na short open tags bych si moc nezvykal. Pokud si vzpomínám v PHP6 už by tato direktiva nemusela existovat.
Str4wberry
Profil
Pokud si vzpomínám v PHP6 už by tato direktiva nemusela existovat.

To čtu prvně. Nemyslíš tím spíš zrušení „ASP“ značek „<%“ a „%>“? Pokud vím, tak zkrácený zápis (<?) je ponechán.
AM_
Profil
Na druhou stranu, je to vůbec někde nepovoleno? :
ano, už jsem je na serverech viděl vypnuté. Short_open_tag je zlo, možná kdysi dobře myšlené, ale z lenosti programátorů napsat "php" se nyní na serverech PHP míchá s dalšími jazyky používajícími <?, nejčastěji asi XML.

na rozepisování <?php echo ?> nevidím nic špatného.
Str4wberry
Profil
na rozepisování <?php echo ?> nevidím nic špatného.

Ale je to 8 znaků oproti jednomu. Při používání šablon je zkrácený zápis k nezaplacení. Zkratka „<?php=“ bohužel nebyla přidána. Nevidím problém to používat. V případě nepodpory lze kód snadno automaticky nahradit nebo si podporu krátkých značek doprogramovat.
AM_
Profil
Str4wberry
napsání "php echo" trvá asi vteřinu a 8 bytů v dnešních poměrech je podle mě příliš malá kompenzace k vytvoření možných problému s přenosem skriptu na jinak nastavený server. Jasně, dá se to hromadně nahradit nebo programově ošetřit, ale:
1) stojí to imo skoro víc času, než dopisovat "php echo"
2) když kód publikuješ, ostatní programátoři by měli být nuceni zcela minimálně (nebo nejlépe vůbec) pátrat, proč kód nefunguje a za jakých podmínek fungovat nemusí.
Str4wberry
Profil
Mně jde o to, že se zkráceným zápisem lze vytvářet rozumně vypadající PHP šablony s minimálními riziky.

Jasně, dá se to hromadně nahradit nebo programově ošetřit, ale
Hromadné nahrazení je otázka maximálně několika desítek vteřin. Hotové programové řešení není problém za podobnou dobu najít a implementovat. :–)

stojí to imo skoro víc času, než dopisovat ‚php echo‘
Samozřejmě se to netýká běžných PHP souborů, kde je jednou na začátku „<?php“, tam je to jedno. Ale v té šabloně je to dost rozdíl.
AM_
Profil
Str4wberry
ono zase když si to vypsání <?php echo ?>dáš na klávesovou zkratku, tak to vyjde úplně nastejno :)
hlavně jde o to, že short_open_tagy se tváří, že jsou odepsané a PHP s nimi do budoucna nepočítá, takže bych se jich zbavoval raději dříve, nežli později. Ikdybys to měl mít na webu 150x, zabere tvorba webu o 150 vteřin více, což je pro programátory směšný čas :)
A nebo když už teda, tak psát <?=, ale nahradit to dávkově při publikaci rovnou a ušetřit tak sobě či hlavně dalším lidem práci, až budou zkoumat, proč to jinde neběhá (ikdyž vypnuté short_open_tagy je pro znalé poznat snadné, méně znalým třeba ne).

//P.S. pro rozsáhlejší šablony už je stejně vhodnější použít šablonový engine, třeba jen nějaký jednoduchý, kde je obvykle zápis ještě kratší.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0