Başlangıç ve bitiş etiketlerinin dışında kalan her şey PHP çözümleyicisi tarafından gözardı edilerek PHP dosyalarının karışık içeriğe sahip olabilmesi sağlanır. Çoğu zaman, bu örnekte olduğu gibi PHP'nin HTML içine gömülmüş olduğunu göreceksiniz.
<p>Bu bölüm PHP tarafından gözardı edilecek ve tarayıcıda gösterilecektir.</p>
<?php echo 'Bu bölüm PHP tarafından çözümlenecektir.'; ?>
<p>Bu bölüm de PHP tarafından gözardı edilecek ve tarayıcıda gösterilecektir.</p>
Yapıların koşullu kullanımı
Örnek 1 - Koşul kullanan gelişmiş önceleme
<?php if (ifade == true): ?>
İfade doğruysa bu gösterilir.
<?php else: ?>
İfade doğru değilse bu gösterilir.
<?php endif; ?>
?>
Büyük metin bloklarını görüntülemek istediğimizde PHP'yi çözümleme kipinden çıkartmak çoğu zaman tüm metni echo ya da print ile görüntülemekten daha verimlidir.
PHP 5'te, PHP'nin yapılandırılışına bağlı olarak kullanılabilecek beş
farklı açılış ve kapanış etiketi çifti vardır. Bunlardan ikisi,
<?php ?> ve <script language="php"> </script> her zaman
kullanılabilir durumdadır. Ayrıca, bir de PHP 5.4.0 ve sonrasında
kullanılabilen <?= ?>
kısa echo etiketi vardır.
Diğer ikisi, kısa etiketler ve ASP tarzı etiketlerdir. Bazı kişiler kısa etiketleri ve ASP tarzı etiketleri daha kullanışlı bulmaktadır, ancak bu ikisi daha az taşınabilir olduklarından genellikle tavsiye edilmemektedir.
Bilginize:
Bir diğer önemli nokta, PHP'yi XML ya da XHTML içine gömmek istiyorsanız standartlarla uyumlu kalabilmek için <?php ?> etiketlerini kullanmanız gerektiğidir.
PHP 7'de ASP ve
<script language="php">
etiketleri için destek
kaldırılmıştır. Sonuç olarak, PHP kodunu yazarken azami uyumluluk için
sadece <?php ?>
ve <?= ?>
etiketlerini kullanmanızı öneriyoruz.
Örnek 2 - PHP Açılış ve Kapanış Etiketleri
1. <?php echo 'XHTML ya da XML belgeleri sunacaksanız,
bu etiketleri kullanın'; ?>
2. <?= 'bu metni basmak' ?> için kısa echo etiketini kullanabilirsiniz.
PHP 5.4.0 ve sonrasında daima etkin olup
<?php echo 'bu metni basmak' ?> ile eşdeğerdir.
3. <? echo 'bu kod kısa etiketlerin içindedir, fakat sadece '.
'short_open_tag etkinse çalışır'; ?>
4. <script language="php">
echo 'bazı düzenleyiciler (FrontPage gibi) bu etiketlerin
içindeki işlem yönergelerini sevmezler';
</script>
5. <% echo 'İsterseniz ASP tarzı etiketler kullanabilirsiniz'; %>
<%= $değişken; %> etiketleri içindeki kod, <% echo $değişken; %>
için bir kısayoldur. Bu son iki etiket çifti PHP 7.0.0'da kaldırılmıştır.
Kısa etiketler (üçüncü örnek) yalnızca php.ini içersinde short_open_tag yapılandırma
yönergesiyle etkinleştirilmişlerse ya da PHP,
--enable-short-tags
derleme seçeneği ile
yapılandırılmışsa kullanılabilirler.
ASP tarzı etiketler (beşinci örnek) php.ini dosyasında asp_tags yapılandırma yönergesiyle etkinleştirilmişse kullanılabilir. Bunlar PHP 7.0.0'da kaldırılmıştır.
Bilginize:
Geliştirdiğiniz uygulamaları ya da kütüphaneleri başkalarına dağıtacaksanız ya da bu uygulamaları denetiminizde olmayan PHP sunucularına kuracaksanız kısa etiketleri kullanmaktan kaçınmalısınız, çünkü hedef sunucu kısa etiketleri desteklemiyor olabilir. Kodlarınızın taşınabilir ve yeniden dağıtılabilir olması için, alışkanlıkla kısa etiketleri kullanmadığınızdan emin olun.
Bilginize:
PHP 5.2 ve öncesinde, çözümleyici, bir dosya içindeki tek şey olarak <?php başlangıç etiketine izin vermezdi. Açılş etiketinden sonra bir veya daha fazla boşluk karakteri olması durumunda PHP 5.3'ten itibaren izin verilmektedir.
Bilginize:
PHP 5.4 itibariyle, kısa echo etiketi <?= short_open_tag seçeneğine bakılmaksızın daima geçerlidir ve tanınmaktadır.