Forum und email

Alapvető szintaxis

Table of Contents

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:

Example#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.

Note: 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.

Example#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.

Note: 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.

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

Note: 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!