PHP je jedan od najčešće korišćenih programskih jezika u web razvoju. Jedna od najvažnijih karakteristika ovog jezika je da nudi različite metode ograničenja. Hajde da ukratko pogledamo PHP tagove za otvaranje i zatvaranje:

  • <?php ?>
  • <?= ?>
  • <? ?>
  • <% %>

Da bi se PHP koristio efikasnije, potrebno je razumjeti razlike i važnost ovih oznaka. U ovom članku ćemo naučiti kako efikasno koristiti PHP oznake.

Zašto ne bismo trebali koristiti kratke PHP oznake?

Kratke PHP oznake mogu biti korisnije za jednostavnost i brzinu kodiranja. Međutim, na većini hostinga i servera je onemogućeno po defaultu u PHP.ini konfiguraciji. U PHP.ini konfiguraciji da ove kratke oznake rade short_open_tag opcija mora biti aktivirana. Dakle, jedina metoda koja će sigurno raditi na svakom PHP serveru je . Ako razmišljate o postavljanju vašeg PHP-a na server koji ne kontrolišete, uvijek možete <?php ?> Trebalo bi da koristite pristup.

Kratki PHP Echo Tag i PHP.ini

<?php echo() ?>

u PHP-u <?= tag u PHP konfiguraciji short_open_tag Može se koristiti bez obzira da li je opcija uključena ili ne, tako da možete bezbedno koristiti ovu prečicu umesto gornje.
Ako samo pišete kod za sebe i možete kontrolirati PHP konfiguraciju koju koristite, možda će vam biti korisnije kratke oznake. Ali zapamtite to <? ?> tag može biti u sukobu sa XML deklaracijama. Također <% %> Oznaka je zapravo ASP stil.

PHP oznake za zatvaranje i potencijalni problemi

Zatvaranje čiste PHP datoteke (na primjer, datoteke koja sadrži samo definiciju klase) ?> Kada dodajete oznaku, pazite da ne ostavite prazne linije. Dok PHP interpreter može bezbedno da "izvrši" jedan znak preloma reda nakon završne oznake, drugi prelomi reda mogu biti izlazni u pretraživač. Ako tada pišete HTTP zaglavlja, stvari mogu postati još zbunjujuće.

PHP PSR-2

PSR-2 standard kodiranja je dio PHP PSR standarda kodiranja kreiranih da bi se utvrdile najbolje prakse u PHP-u. PSR-2 standardi kodiranja primjenjuju se samo na datoteke koje sadrže PHP kod. ?> preporučuje da se ne koriste oznake za zatvaranje. Glavni razlog za ovu preporuku je sprečavanje slanja znakova kao što su razmaci ili prijelomi redova koji su slučajno ostali nakon završne oznake u pretraživač. U PHP-u, ?> Svaki znak koji slijedi oznaku automatski se smatra dijelom HTML izlaza. Ovo može biti posebno problematično prilikom obrade HTTP zaglavlja.

Nepotrebni znakovi na kraju PHP datoteke mogu spriječiti ispravnu obradu HTTP zaglavlja. U HTTP protokolu, bilo koji izlaz onemogućava slanje zaglavlja jer zaglavlja moraju biti dovršena prije slanja sadržaja. Ovo uzrokuje problem poznat kao zaglavlja koja su već poslana, što može utjecati na radnje kao što su pokretanje sesije, postavljanje kolačića ili preusmjeravanje stranice.

Stoga, PSR-2 preporučuje da se ne koristi tag za zatvaranje u datotekama koje sadrže samo PHP kod, kako bi se izbjegle takve uobičajene greške i sačuvala čistoća koda. Ovaj pristup eliminiše moguće probleme koji se mogu pojaviti zbog neželjenih razmaka ili znakova na kraju reda na kraju koda i doprinosi stabilnijem radu PHP skripti bez grešaka.

PHP oznake i kompatibilnost

Prilikom pisanja web aplikacija za starije verzije, zatvaranje ?> html sa oznakama <!doctype> Pazite da ne ostavite novi red između oznaka. Starije verzije IE-a mogu izbaciti različite greške ako naiđu na razmake, uključujući nove redove, prije deklaracije doctype. Ovo nije slučaj sa novijim verzijama IE i drugim, naprednijim pretraživačima. (To jest, za svaki pretraživač osim IE.)