DERS 2: PHP Yazım Kuralları

Netopsiyon Siteleri Yöneticisi
Kullanıcı avatarı
Mesajlar: 42
Kayıt: 20 Tem 2002, 00:00
Konum: Balıkesir

DERS 2: PHP Yazım Kuralları

Mesajgönderen Aliosman » 09 Mar 2012, 07:47

Bu derste PHP yazım kurallarına değineceğim. Bu üzerinde durmamız gereken en önemli konudur. En çok hata yapma nedeni bu yazım kurallarını bilmemekten kaynaklanıyor.

PHP'de herhangi bir yazıyı ekrana yazdırmak için 3 (üç) komut vardır. Bunlar echo, print, printf komutlarıdır. printf komutunun başka özellikleri de var. Ancak bu konuya daha sonra değineceğim. En çok kullanılan echo ve print komutlarıdır.


Kod: Tümünü seç
1: <?PHP
2: echo "Merhaba Millet";
3: ?>



kodunu inceleyelim. 1. satırda <?PHP ile PHP dosyamıza bir başlangıç yaptık. 2. satırdaki echo "Merhaba Millet"; ile de ekrana Merhaba Millet yazısını yazdırdık. 3. satırda ise ?> ile PHP dosyamızın bittiğini belirttik. Kodlardan 2. satırda ekrana yazı yazdırmak için echo kullandık. Bunun yerine print komutunu da kullanabiliriz.

Kod: Tümünü seç
1: <?PHP
2: print "Merhaba Millet";
3: ?>



2. satırı tekrar inceleyelim. echo ile ekrana yazı yazdıracağımızı söyledik. "" (çift tırnak) işaretleri arasına da ekranda gösterilecek yazımızı yazdık. Metinler tırnak işaretleri arasında yazılmalıdır. En sondaki ; (noktalı virgül) ile de echo komutumuzun bittiğini belirttik. Eğer ; işaretini kullanmazsak PHP yorumlayıcı echo komutunun bittiğini anlayamaz.

Kod: Tümünü seç
1: <?PHP
2: print 'Merhaba Millet';
3: ?>



Buradaki 2. satırda ise çift tırnak(") yerine tek tırnak (') kullandık. Bu şekildeki kullanımda da yine ekranda Merhaba Millet yazacaktır. Tek tırnak kullanmak ile çift tırnak kullanmak arasında farklar vardır. Bunlara daha sonra değineceğim. Şöyle toplu bir örnek vereyim.

Kod: Tümünü seç
1: <?PHP
2: echo "Merhaba Millet";
3: print "Merhaba Millet";
4: echo 'Merhaba Millet';
5: print 'Merhaba Millet';
6: ?>



Kodunu yazıp çağırdığımızda yan yana 4 adet Merhaba Millet yazısı çıkacaktır. 2., 3.,4. ve 5. satırlara dikkat ederseniz komutun bittiğini ; işaretiyle her seferinde belirttim.

Peki echo, print içerisinde HTML komutları kullanılabilir mi? Elbette kullanılabilir. İşte dikkat burada başlıyor.

Kod: Tümünü seç
<?PHP
echo "<div style=text-align:center;>Merhaba Millet</div>";
?>


Şeklindeki bir komutla Merhaba Millet yazısını ortada yazdırdık.

Normal HTML şekli şu şekilde olmalıydı.

Kod: Tümünü seç
<div style="text-align:center;">Merhaba Millet</div>


Ancak biz PHP de bunu yazarken echo da

Kod: Tümünü seç
<div style=text-align:center;>Merhaba Millet</div>


şeklinde kullandık. Bu şekildeki kullanımda doğrudur ancak biz yine kurallara göre yazalım. Örneğimizi aşağıdaki şekle getirelim ve çalışıp çalışmadığına bakalım.

Kod: Tümünü seç
<?PHP
echo "<div style="text-align:center;">Merhaba Millet</div>";
?>



Sizce bu çalışır mı? Hayır çalışmaz hata verir. Neden hata verir açıklayayım.

echo "<div style="text-align:center;">Merhaba Millet</div>"; kodundaki kalın yazan yere dikkat edin. PHP iki çift tırnak işareti içerisini okur. Yani ilk iki tırnak işaretini algılar. Komutun bittiğini ; (noktalı virgül) ile belirttiğimizden echo "<div style=" satırından sonra ; (noktalı virgül) işaretini arar. Bulamadığı için hata verir. Bu durumu nasıl önleyeceğimize değineyim.

1. Çift tırnak yerine tek tırnak kullanmak:

Kod: Tümünü seç
echo '<div style="text-align:center;">Merhaba Millet</div>';


şekline getirirsek hata vermez. Ancak ileri de anlatacağım değişkenleri tek tırnak içerisinde gösteremeyiz. Tek tırnak için değişken göstermeye çalıştığınızda PHP o değişkeni yazı olarak algılar ve değişkeni yazı olarak ekranda gösterir.

Burada dikkat edilmesi gereken nokta <div style="text-align:center;">Merhaba Millet</div> komutundaki çift tırnak yerine tek tırnak kullandığımızda yine hata verir.

2. Özel karakter olarak kullanılan simgeleri anlamsızlaştırmak:

Kod: Tümünü seç
echo "<div style=\"text-align:center;\">Merhaba Millet</div>";


şeklinde ki kullanım buna örnektir. Dikkat ederseniz <div style=\"text-align:center;\"> bölümünde " çift tırnak işaretinden önce \ işaretini koyarak çift tırnağı anlamsızlaştırıyoruz.

echo ile bir yazı yazdırmaya başladık diyelim. Yazımız uzun bir metin olsun.

Microsoft, uzun bir süredir beklenen Internet Explorer Web tarayıcısının son sürümünü sonunda kullanıcılara sundu. Güvenlik alanında pek çok yeniliği barındıran Internet Explorer 7, İnternet´te sörf yapmayı kolaylaştıran özellikler de içeriyor. Internet Explorer 7´nin bir önceki sürümü olan Internet Explorer 6, Ağustos 2001´de piyasaya sürülmüştü.

Uzun bekleyiş sona erdi ve Microsoft, sonunda Internet Explorer 7’yi piyasaya sürerek 5 yıllık bir aradan sonra Internet Explorer Web tarayıcısı için en büyük güncellemeyi yaptı. Internet’te güvenli ve etkili bir sörf için en son güvenlik güncellemelerini ve kullanım fonksiyonlarını içeren Internet Explorer 7, yokluğu boyunca geçen sürede kaybettiği itibarını yeniden toparlamasını sağlayabilecek pek çok yeniliğe sahip.



Bu yazıyı PHP de echo ile yazdıracağız. Ancak her satırı ayrı ayrı yazmak istiyorum.

Kod: Tümünü seç
<?PHP
echo "Microsoft, uzun bir süredir beklenen Internet Explorer Web tarayıcısının son sürümünü sonunda kullanıcılara sundu. Güvenlik";
echo "alanında pek çok yeniliği barındıran Internet Explorer 7, İnternet´te sörf yapmayı kolaylaştıran özellikler de içeriyor. Internet";
echo "Explorer 7´nin bir önceki sürümü olan Internet Explorer 6, Ağustos 2001´de piyasaya sürülmüştü.";
echo "<br /><br />";
echo "Uzun bekleyiş sona erdi ve Microsoft, sonunda Internet Explorer 7’yi piyasaya sürerek 5 yıllık bir aradan sonra Internet Explorer";
echo "Web tarayıcısı için en büyük güncellemeyi yaptı. Internet’te güvenli ve etkili bir sörf için en son güvenlik güncellemelerini ve";
echo "kullanım fonksiyonlarını içeren Internet Explorer 7, yokluğu boyunca geçen sürede kaybettiği itibarını yeniden toparlamasını";
echo "sağlayabilecek pek çok yeniliğe sahip.";
?>



Bu şekilde bir yazım yapabilirsiniz yada hepsini tek echo içerisinde yazabilirsiniz.


Kod: Tümünü seç
<?PHP
echo "Microsoft, uzun bir süredir beklenen Internet Explorer Web tarayıcısının son sürümünü sonunda kullanıcılara sundu. Güvenlik alanında pek çok yeniliği barındıran Internet Explorer 7, İnternet´te sörf yapmayı kolaylaştıran özellikler de içeriyor. Internet Explorer 7´nin bir önceki sürümü olan Internet Explorer 6, Ağustos 2001´de piyasaya sürülmüştü.
<br /><br />
Uzun bekleyiş sona erdi ve Microsoft, sonunda Internet Explorer 7’yi piyasaya sürerek 5 yıllık bir aradan sonra Internet Explorer Web tarayıcısı için en büyük güncellemeyi yaptı. Internet’te güvenli ve etkili bir sörf için en son güvenlik güncellemelerini ve kullanım fonksiyonlarını içeren Internet Explorer 7, yokluğu boyunca geçen sürede kaybettiği itibarını yeniden toparlamasını sağlayabilecek pek çok yeniliğe sahip.";
?>



Bu şekilde bir yazım da yapılabilir. Ben ilk örneği şu hale getireceğim şimdi.

Kod: Tümünü seç
<?PHP
echo "Microsoft, uzun bir süredir beklenen Internet Explorer Web tarayıcısının son sürümünü sonunda kullanıcılara sundu. Güvenlik"
."alanında pek çok yeniliği barındıran Internet Explorer 7, İnternet´te sörf yapmayı kolaylaştıran özellikler de içeriyor. Internet"
."Explorer 7´nin bir önceki sürümü olan Internet Explorer 6, Ağustos 2001´de piyasaya sürülmüştü."
."<br /><br />"
."Uzun bekleyiş sona erdi ve Microsoft, sonunda Internet Explorer 7’yi piyasaya sürerek 5 yıllık bir aradan sonra Internet Explorer"
."Web tarayıcısı için en büyük güncellemeyi yaptı. Internet’te güvenli ve etkili bir sörf için en son güvenlik güncellemelerini ve"
."kullanım fonksiyonlarını içeren Internet Explorer 7, yokluğu boyunca geçen sürede kaybettiği itibarını yeniden toparlamasını"
."sağlayabilecek pek çok yeniliğe sahip.";
?>



Şimdi bu örneğimi açıklayayım. ilk satırda echo ile yazdırmaya başladım. Sonuna ; koymadım ve komutun devam ettiğini belirttim. Bir sonraki satırda echo yerine .(nokta) işaretini kullandım ve onu da ; işaretiyle bitirmeyerek komutun hala devam ettiğini belirttim. Aradaki satırlarda da bu şekilde devam ettim. Son satıra da . ile başlayıp ; ile bitirdim. Nokta (.) bir önceki komutun (echo) yerini aldı. Son satırda ; işaretini kullanmasaydım yine hata verirdi yada aradaki satırlarda ; işareti ile bir satırı bitirseydim başta başladığım echo komutu bitmiş olacaktı ve . işareti anlamsız bir hale gelecekti. Dolayısıyla yine hata verecekti. Yapılan en büyük hatalardan biri budur. Son örneği şu halde de yazabilirim.

Kod: Tümünü seç
<?PHP
echo "Microsoft, uzun bir süredir beklenen Internet Explorer Web tarayıcısının son sürümünü sonunda kullanıcılara sundu. Güvenlik"
."alanında pek çok yeniliği barındıran Internet Explorer 7, İnternet´te sörf yapmayı kolaylaştıran özellikler de içeriyor. Internet"
."Explorer 7´nin bir önceki sürümü olan Internet Explorer 6, Ağustos 2001´de piyasaya sürülmüştü.";
echo "<br /><br />";
echo "Uzun bekleyiş sona erdi ve Microsoft, sonunda Internet Explorer 7’yi piyasaya sürerek 5 yıllık bir aradan sonra Internet Explorer"
."Web tarayıcısı için en büyük güncellemeyi yaptı. Internet’te güvenli ve etkili bir sörf için en son güvenlik güncellemelerini ve"
."kullanım fonksiyonlarını içeren Internet Explorer 7, yokluğu boyunca geçen sürede kaybettiği itibarını yeniden toparlamasını"
."sağlayabilecek pek çok yeniliğe sahip.";
?>



Bu konudaki örnekleri çoğaltabilirim. Kısa bir özet yaparsak;
• Her komut ; (noktalı virgül) işareti ile bitmelidir.
• Çift tırnak ve tek tırnak kullanımı yerine göre seçilmelidir.
• HTML komutları eklerken " çift tırnak işareti \ işareti ile anlamsızlaştırılmalıdır.
• Ekrana yazı yazdırmak için echo yada print komutu kullanılır.
• (nokta). işareti bir önceki komutun yerine geçebilir

Konuyu bütün anlattıklarımı içeren bir örnekle noktalıyorum.

Kod: Tümünü seç
<?PHP
//Ekrana yazı yazdırmak için echo ve print kullanılır.
echo "Ekrana echo komnutu ile yazı yazdırdım<br />";
print "<div style=\"text-align:center;\">Bu yazıyı print ile yazdırdım ve ortalattım. Çift tırnakları anlamsızlaştırdım.</div>";
echo 'Burada tek tırnak kullandım. Böylece " işaretini yazıda kullanabilirim.<br /><br />';
echo '<div style="text-align:center;">Tek tırnak ile başladığım için çift tırnağı kullanabilirim</div>';
echo "<br /><br />HTML Komutu kullanıyorum.<br /><br />";
echo "Bu satır alttan devam edecek. ; işareti ile bitirmiyorum"
."bu satıra nokta ile başladım. yani üst yazının devamı"
."bu da üst satırın devamı. ancak burada echo komutuna son veriyom. Çünkü yorum yazacam.<br /><br />";
/* Araya yorum işareti sokuşturalım ki önceki konuyu tekrarlayın.
Böylece unutmamız zorlaşır. Yazdıklarımı okumayı unutmayın*/
#Bu da bir yorum satırı
echo "Bu satırın içinde yorum yazar gibi yapacam"
."/* Araya yorum işareti sokuşturalım ki önceki konuyu tekrarlayın."
." \"\"\"\"ÖRNEK BİTTİİİİ \"\"\"\"";
?>
===========================
http://www.netopsiyon.com.tr
===========================

Dön PHP Dersleri

Kimler çevrimiçi

Bu forumu gezen kullanıcılar: Hiç bir kayıtlı kullanıcı yok ve 1 misafir