PHP je jedan od najčešće korištenih programskih jezika u web razvoju. Jedna od najvažnijih značajki ovog jezika je da nudi različite metode ograničenja. Pogledajmo ukratko PHP otvarajuće i zatvarajuće oznake:

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

Kako bismo učinkovitije koristili PHP, potrebno je razumjeti razlike i važnost ovih oznaka. U ovom ćemo članku naučiti kako učinkovito 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 poslužitelja onemogućen je prema zadanim postavkama u PHP.ini konfiguraciji. U konfiguraciji PHP.ini za rad ovih kratkih oznaka short_open_tag opcija mora biti aktivirana. Dakle, jedina metoda koja će sigurno raditi na svakom PHP poslužitelju je . Ako razmišljate o postavljanju PHP-a na poslužitelj koji ne kontrolirate, uvijek možete <?php ?> Trebali biste koristiti pristup.

Kratka PHP echo oznaka i PHP.ini

<?php echo() ?>

u PHP-u <?= oznaku u PHP konfiguraciji short_open_tag Može se koristiti bez obzira je li opcija uključena ili ne, tako da možete sigurno koristiti ovaj prečac umjesto onog iznad.
Ako samo pišete kod za sebe i možete kontrolirati konfiguraciju PHP-a koju koristite, možda će vam kratke oznake biti korisnije. Ali zapamti to <? ?> oznaka može biti u sukobu s XML deklaracijama. Također <% %> Oznaka je zapravo ASP stila.

PHP zatvaranje oznaka i mogući problemi

Zatvaranje čiste PHP datoteke (na primjer, datoteke koja sadrži samo definiciju klase) ?> Prilikom dodavanja oznake pazite da ne ostavite prazne retke. Dok PHP interpreter može sigurno "izvršiti" jedan znak prijeloma retka nakon završne oznake, drugi prijelomi retka mogu biti ispisani pregledniku. Ako tada pišete HTTP zaglavlja, stvari mogu postati još zbunjujuće.

PHP PSR-2

PSR-2 standard za kodiranje dio je PHP PSR standarda za kodiranje stvoren da odredi najbolju praksu u PHP-u. PSR-2 standardi kodiranja primjenjuju se samo na datoteke koje sadrže PHP kod. ?> preporučuje da ne koristite oznake za zatvaranje. Glavni razlog za ovu preporuku je sprječavanje slanja znakova kao što su razmaci ili prijelomi retka nakon završne oznake u preglednik. U PHP-u, ?> Svaki znak koji slijedi nakon oznake automatski se smatra dijelom HTML izlaza. To može biti posebno problematično pri obradi HTTP zaglavlja.

Nepotrebni znakovi na kraju PHP datoteke mogu spriječiti ispravnu obradu HTTP zaglavlja. U HTTP protokolu bilo koji izlaz onemogućuje slanje zaglavlja jer se zaglavlja moraju dovršiti prije slanja sadržaja. To uzrokuje problem poznat kao već poslana zaglavlja, što može utjecati na radnje poput pokretanja sesije, postavljanja kolačića ili preusmjeravanja stranice.

Stoga PSR-2 preporučuje da ne koristite završnu oznaku u datotekama koje sadrže samo PHP kod, kako bi se izbjegle takve uobičajene pogreške i očuvala čistoća koda. Ovakav pristup eliminira moguće probleme koji se mogu pojaviti zbog neželjenih razmaka ili znakova za kraj retka na kraju koda te doprinosi stabilnijem radu PHP skripti bez grešaka.

PHP oznake i kompatibilnost

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