İçeriğe geç

Php neden ?> kullanmıyoruz ?

Merhaba arkadaşlar,

Bildiğiniz üzere php betiklerimizi kapatırken ?> kapatma etiketi kullanılır. Ancak bir çok PHP scriptinde ve editörlerde kapatma etiketinin (?>) kullanılmadığını görmüşsünüzdür. Peki neden ?> kullanmıyoruz ? Bunun bize avantajı ve dezavantajı nedir ? Merak eden arkadaşlar için hemen açıklayalım.

Kapatma etiketini kullanmamanın bize her hangi bir dezavantajı yoktur. Eğer kullanırsak ?> etiketinden sonra yeni satırlar ve boşluk gibi karakterler kalabiliyor. Bu karakterlerde php derleyicisi tarafından çıktı olarak algılanmaktadır. Bu durumda ise “Headers already sent” hatası, sessionların oluşturulamaması, header kodlarının yönlendirme yapamaması gibi durumlarla karşılaşabiliriz. Muhtemelen her şeyi doğru yaptığınız halde bu hatalarla karşılaşmışsınızdır. Bunun tek sebebinin kapatma etiketi olduğunu söylemek tabii ki doğru değildir. Ancak kapatma etiketinin bu hatalara sebep olduğu da bir gerçektir. Projenizi kodlarken ?> kapatma etiketi kullanmamak size yarar sağlar ve kod standartlarına uygundur.

Aynı durumu açılış etiketi <?php yerine <? etiketini kullanmak için kesinlikle önermiyorum. Hatta asla kullanmamalısınız. Çünkü bu etiket çoğu sunucularda kapalı durumdadır. Bu ufak sorun yüzünden ileride hiç olmadık yerde boşuna zaman kaybedebilirsiniz. Zaten <?php yerine <? kullanmanın bize sağladığı hiç bir avantajda bulunmuyor 🙂

Ancak kısa ekrana yazdırma etiketi olarak kullanabilirsiniz. Örneğin $a değişkeninin değerini ekrana yazdırmak istiyorsunuz bu durumda echo $a yazmak yerine <?=$a?> şeklinde kullanabilirsiniz. Bu kullanımda kapatma etiketi kullanmamak gibi kodlama standartlarına uygundur.

Kategori:PHP

İlk Yorumu Siz Yapın

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir