PHP kézikönyv
Előző |  | Következő

# 10. Fejezet. Alapvető szintaxis

# Escape szekvencia HTML-ben

Amikor a PHP feldolgoz egy fájlt, akkor a nyitó és a záró tag-eket keresi, amelyek megmondják a PHP-nek, hogy kezdje el ill. fejezze be a közöttük lévő kódot értelmezni. Ez a kódértelmező mód teszi lehetővé azt, hogy a PHP kódokat mindenféle dokumentumba be tudjuk ágyazni, mivel mindent, ami a nyitó és záró tag-eken kívül esik, a PHP értelmező figyelmen kívül hagy. PHP kódot legtöbbször HTML dokumentumokba ágyazva fogsz látni, mint ebben a példában is.

`<p>Ezt figyelmen kívül hagyja.</p> <?php echo 'Ezt viszont értelmezi.'; ?> <p>Ezt szintén figyelmen kívül hagyja.</p>`

Bonyolultabb struktúrákat is alkalmazhatsz:

Példa 10-1. Haladó escape-elés

`<?php if ($kifejezes) { ?> <strong>Ez igaz.</strong> <?php } else { ?> <strong>Ez hamis.</strong> <?php } ?>`

Ez az elvártnak megfelelően működik, mivel a PHP amikor ?> záró tag-et talál, egyszerűen elkezdi a kimenetre írni ami ezután következik, mígnem talál egy másik nyitó tag-et. Az adott példa természetesen nem egy túl hasznos alkalmazást mutat be, de mikor nagy szövegrészeket akarsz kiiratni, akkor a PHP módból való kilépés sokkal hatékonyabb, mint echo()-val vagy print()-el kiiratni az egészet.

Négy különböző nyitó és záró tag pár létezik. Kettő közülük, a <?php ?> és a <script language="php"> </script>, mindig rendelkezésre állnak. A másik kettő a rövid tag-ek és az ASP-szerű tag-ek, ezek ki és be kapcsolhatók a `php.ini` konfigurációs fájlban. Míg egyesek a rövid tag-eket és az ASP tag-eket kényelmesnek tartják, ezek kevésbé hordozhatóvá teszik a programokat, ezért használatuk nem ajánlott.

> Megjegyzés: Ha XML-be, vagy XHTML-be ágyazol PHP kódot, akkor a <?php ?> tag-eket kell használnod, hogy ne térj el a szabványtól.

Példa 10-2. PHP nyitó és záró tag-ek

`1. <?php echo 'ha XHTML vagy XML dokumentumokat akarsz szolgáltatni, tedd így'; ?>
2. <script language="php">
echo 'egyes szerkesztők (mint pl FrontPage) nem szeretik
a feldolgozó utasításokat';
</script>
3. <? echo 'ez a legegyszerűbb, egy SGML processing utasítás'; ?>
<?= kifejezes ?> Ez egy rövidítése ennek: "<? echo kifejezes ?>"
4. <% echo 'Használhatsz ASP-stílusú tag-eket'; %>
<%= $valtozo; # Ez egy rövidítése ennek: "<% echo . . ." %>`

Míg az első és a második példában tárgyalt tag-ek mindig rendelkezésre állnak, az elsőt alkalmazzák széleskörben, és az is az ajánlott.

A rövid tag-ek (harmadik példa) csak akkor használhatók, ha engedélyezve vannak a short_open_tag `php.ini` konfigurációs fájl direktívával, vagy ha a PHP az --enable-short-tags kapcsólóval volt fordítva.

> Megjegyzés: Ha PHP 3-at használsz, akkor a rövid tag-eket a short_tags() függvénnyel is engedélyezheted. Ez csak PHP 3-ban lehetséges!

Az ASP-szerű tag-ek (negyedik példa) csak akkor használhatók, ha engedélyezve vannak az asp_tags `php.ini` konfigurációs fájl direktívával.

> Megjegyzés: Az ASP tag-ek lehetősége a PHP 3.0.4-től létezik.

> Megjegyzés: A rövid nyitójelölések használatát kerülni kell újrafelhasználandó, széles körű terjesztésre szánt könyvtárak vagy programok fejlesztésekor, illetve olyan alkalmazások megírásakor, amelyek üzemeltetése felett a program írójának nincs ellenőrzése, Ennek oka, hogy a rövid nyitójelölések nem minden konfigurációban használhatók, így csökkenti a hordozhatóságot. Hordozható, újrafelhasználható komponensek esetén ne használd a rövid nyitójelöléseket!

Előző | Tartalom | Következő
A nyelv alapjai | Fel | Utasítások elválasztása