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

# 10. Fejezet. Alapvető szintaxis

# Escape szekvencia HTML-ben

Amikor a PHP feldolgoz egy fájlt, akkor egyszerűen a kimenetre másol minden karaktert, amíg nem találkozik valamelyik speciális jelöléssel (lásd alább!), amelyet PHP kódrészlet kezdeteként értelmez. Ekkor a PHP futtatni kezdi a zárójelölésig található összes kódot. Ezzel a működési elvvel lehet könnyen HTML oldalakba elhelyezni PHP kódot, mivel mindent, ami a PHP nyitó- és zárójelölésein kívül esik, teljes mértékben békénhagy, és csak ezeken belüli tartalmat értelmezi programkódként.

Négyféle jelöléssel lehet az állomány bizonyos részeit PHP kódként megjelölni. Ezek közül csak kettő használható bármilyen esetben: <?php. . .?> and <script language="php">. . .</script> a másik kettő ki és bekapcsolható a `php.ini` konfigurációs fájlban. Bár a rövid vagy az ASP-stílusú formák kényelmesnek tűnnek, egyszersmind kevésbé hordozhatók, mint a hosszabb változatok. Emellett, ha XML vagy XHTML fájlokba kell PHP kódot illeszteni, azt csak <?php. . .?> alakkal lehet - igazodva az XML ajánláshoz.

Példa 10-1. A PHP-módba kerülés lehetőségei

    1.  <?php echo("Ha XHTML vagy XML dokumentumokat is akarsz szolgáltatni," .
                   "biztos szeretni fogod ezt\n"); ?>

    2.  <? echo ("Ez a legegyszerűbb, egy SGML processing utasítás\n"); ?>
        <?= $valtozo; # Ez egy rövidítése a "<? echo ..?>"-nak ?>

    3.  <script language="php">
            echo ("Néhány szerkesztő (ilyen pl. a FrontPage) nem" .
                  "szereti a processing utasításokat");
        </script>

    4.  <% echo ("Használhatsz ASP-stílusú tag-eket"); %>
        <%= $valtozo; # Ez egy rövidítése a "<% echo ..%>"-nak %>

Az első lehetőség a leginkább javasolt, mivel ezzel XML-konform dokumentumokban - mint például az XHTML - is lehet PHP kódokat elhelyezni.

A második forma nem mindig használható, csak akkor, ha a rövid nyitó jelölések engedélyezve vannak. Engedélyezhetjük - PHP 3-ban - short_tags() függvényhívással, a short_open_tag beállítással a PHP konfigurációs fájlban, vagy a PHP fordításánál a configure program --enable-short-tags opciójával. Annak ellenére ha alapértelmezés szerint engedélyezve van is, a rövid nyitójelölések használata ellenjavallt.

A harmadikként bemutatott módszer is minden esetben elérhető, de nem annyira kedvelt és elterjedt forma, mint az első.

A negyedik mód csak akkor elérhető, ha az ASP-stílusú jelölés is engedélyezve van az asp_tags konfigurációs beállítással.

> Megjegyzés: Az ASP-stílusú tagek a 3.0.4. verziótól használhatóak.

> Megjegyzés: A rövid nyitójelölések használata kerülendő ú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!

A lezárójelölés magában foglalja a jelölést közvetlenül követő újsort karaktert, ha van ilyen, emellett a PHP blokk utolsó sorát lezáró pontosvesszőt (;). A php állományok végére a lezárójelölést kitenni nem kötelező.

A PHP a következő struktúrák használatát is megengedi:

Példa 10-2. HTML blokkok feltételhez kötése

`<?php if ($igazez) { ?> <strong>Igaz a változó tartalma</strong> <?php } else { ?> <strong>Hamis a változó tartalma</strong> <?php } ?>`

Ez a várakozásoknak megfelelően működik, mivel a PHP ?> lezáró jelölést követően mindent átmásol a kimenetre, amíg egy újabb nyitó jelöléssel. A fenti példa természtesen mondvacsinált, de nagy méretű szövegblokkok kiíratásakor hatékonyabbnak bizonyulhat ideiglenesen elhagyni a PHP módot, mint mindezt a szöveget echo(), print() vagy ehhez hasonló függvényekkel kiíratni.

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