Jump to content

Seri 05 - PHP Yazılım Biçimi


Muallim-i Ali

Recommended Posts

Bu makale ile beraber artık PHP yazmaya başlıyoruz. Yazdığımız kodları C:\Apache\Apache2\htdocs klasörü altına kopyaladıktan sonra internet explorer’ın adres çubuğuna Http://localhost/dosyaadi.php olarak erişebilirsiniz tabi httpd.conf ’da bir değişiklik yapmadıysanız. Bir PHP dosyası eğer saf HTML içeriyorsa normal bir .html uzantılı dosya gibi davranır yani aktif hiç bir işlem gerçekleştirmez. PHP dosyamızı aktif kılacak şey PHP etiketidir (PHP tags). Bu etikeleri gören yorumlayıcı kodlarımızı ayrıştırmaya başlar ve derleyiciye devreder. Etketlerin yazılış biçimi farklı şekilerde gerçekleştirebilir. Bu arada ECHO ekrana yazdırma fonksiyonudur.

<?php echo("etikete isterseniz php ibaresi ekleyebilirsiniz.Bu arada echo ekrana yazdırma rutinidir."); ?>

<? echo("istemezseniz eklemezsiniz. Bu ayarlar php.ini’de mevcut.Bu betik ’Short Tag’ olarak geçmekte"); ?>

<? echo "tek satır olduğu için noktalı virgül ile bitirmek zorunda değiliz" ?>

<?= "kısa yazılım. sadece echo için kullanılır" ?>

<script language="php">

echo ("bu yazılım biçiminin avantajı Frontpage’de hatalara sebeb olmaması.");

</script>

/* Alttaki yazım biçimi gösteriyor ki yorumlayıcı etiketler ile oynmamıza rağmen PHP akışını dosya sonuna kadar bir bütün olarak değerlendiriyor. Bu kodun çıktısına bakarsanız "Deyim Yanlış" sonucunu göreceksiniz. Bu da demek oluyorki daha evvel değer belirlenmemiş değişken IF sorgusuna girerse false olarak değerlendirilecektir.*/

<?php

if ($deyim) {

?>

Deyim Doğru.

<?php

} else {

?>

Deyim Yanlış.

<?php

}

?>

/* Tek satırlık kısa biçimli if sorgusu.*/

<? $deyim ? echo "Deyim Doğru" : echo "Deyim Yanlış"; ?>

Kod arasında yorum ekleme veya komutu devre dışı bırakmak.

<?php

echo "en çok kullanılan echo görünümü"; // C++ tipi tek satırlık yorum

/* Çok satırlı başka bir yorum

ve buda çok olan satırı */

echo "en çok kullanılan echo görünümü";

echo "en çok kullanılan echo görünümü"; # Bash kabuk programlamada kullanılan yorum biçimi

?>

<?php # echo "selam";?> Tek satırlık yorumlar etiket veya satır bitimi ile sonlanır

<?php

/*

echo "iç içe girmiş yorumlar sorun çıkarabilir"; /* Bu yorum renklendirmeden de anlayacağınız gibi hataya neden olacaktır */

*/

?>

<?php

/*

echo "doğru yazılım biçimi"; /* çok satırlı yorumların kaç kere açıldığı önemli değildir. */

?>

İşlem Sırası

<?php

$toplam = 5 + 9; /* toplam = 14 */

$toplam = 5 + 9*2; /* toplam = 23 */

$toplam = (5 + 9)*2; /* toplam = 28, Önce parantez içi sonra çarpma */

$toplam = (5 + 9)*2/4; /* toplam = 7, Parantez içi ile bölüm aynı zamanlı sonuçlar çarpılır */

$toplam = (5 + 9)*8%6; /* toplam = 23 Parantez içi ile modulus aynı zamanlı sonuçlar çarpılır */

/* % = modulus , 8%6 = 8’in 6’ya bölümünden kalanı (2) */

?>

String "Katar" İşlemlerinde dikkat edilmesi gerekenler

<?php

echo "katar içinde tırnak \"sadun derki\" nokta"; /* Sonuç: katar içinde tırnak "sadun derki" nokta*/

echo "katar içinde tek tırnak ’sadun derki’ nokta"; /* Sonuç: katar içinde tek tırnak ’sadun derki’ nokta*/

echo ’katar içinde tek tırnak \’sadun derki\’ nokta’; /* Sonuç: katar içinde tek tırnak ’sadun derki’ nokta*/

echo ’katar içinde tek tırnak "sadun derki" nokta’; /* Sonuç: katar içinde tırnak "sadun derki" nokta*/

/*Dikkat ettiyseniz eğer echo fonksiyonuna çift tırnak ile başladıysam içerde çift tırnak kullanam gerektiğinde önüne slash eklemem gerekti fakat çift tırnak ile başladıklarımın içine tek tırnak ile giriş yapabildim*/

/* Dikkat!! Formlardan gelen string verileri eğer içlerinde tek veya çift tırnak barındırıyorsa PHP tarafından bu tırnaklar önlerine slash eklenerek program içerisinde hata yaratmasını engelleyecek şekilde etkisiz hale getirilir. Bu yüzden PHP siteleri ASP sitelerine göre SQL enjeksiyonlarına karşı daha az duyarlıdır. (SQL Enjeksiyonuna Veri tabanı bölümünde değinicez) */

?>

<?php

$string = "sadun derki";

echo "katar içinde tırnak \"$string\" nokta"; /* Sonuç: katar içinde tırnak "sadun derki" nokta*/

echo "katar içinde tek tırnak ".$string." nokta"; /* Sonuç: katar içinde tek tırnak sadun derki nokta*/

echo ’katar içinde tek tırnak ’.$string.’ nokta’; /* Sonuç: katar içinde tek tırnak ’sadun derki’ nokta*/

echo ’katar içinde tek tırnak ".$string." nokta’; /* Sonuç: katar içinde tırnak ".sadun derki." nokta*/

/* iki string’in birleştirilmesi işlemine concatenate denmektedir. bunu $string = "string1"."string2" şeklinde yapabiliriz. Fakat concatenate’e hangi tırnak ile başladıysak onla devam etmemiz gerekmekte */

?>

<?php

$string_dizisi = array(’sıfırıncı’ => ’0’, ’birinci’ => ’1’); /* Dizilere değişkenler bölümünde göz atcaz */

echo "Dizi elemanı: $string_dizisi["sıfırıncı"]"; /* BU YANLIŞ */

echo "Dizi elemanı: {$string_dizisi["sıfırıncı"]}"; /* string içerisinde {} "curly bracket" kullanıldığında anlarız ki için değişken yazılmıştır. Sonuç = Dizi elemanı: 0 */

echo "Dizi elemanı: ${string_dizisi["sıfırıncı"]}"; /* Kullanım doğru, Sonuç = Dizi elemanı: 0 */

echo "Dizi elemanı: ".$string_dizisi["birinci"]; /* veya concenate edebiliriz. Sonuç = Dizi elemanı: 1*/

?>

<?php

$string = "sadun derki";

echo "sıfırıncı karakter: ".$string{0}; /* Sonuç: sıfırıncı karakter: s*/

echo "sıfırıncı karakter: {$string{0}}"; /* Sonuç: sıfırıncı karakter: s*/

echo "sıfırıncı karakter: ".$string[0]; /* Sonuç: sıfırıncı karakter: s*/

echo "sıfırıncı karakter: {$string[0]}"; /* Sonuç: sıfırıncı karakter: s*/

?>

<?php

echo "katar’dan sonra yeni satır.\n<br>"; /* string içindeki \n yeni satırı temsil etmektedir fakat bu yeni satır HTML kodunda bırakılmaktadır bunu kaynak kodu görüntüleyerek görebilirsiniz. Eğer bu yeni satırı tarayıcıdada görmek istiyorsanız <br> etiketini kullanmanız gerekmektedir. Bi string’in içindeki \n karakterini <br> çevirmek istiyorsanız nl2br() fonksiyonunu kullanınız.*/

echo "buda dolar işareti: \$"; /*PHP de dolar işaret değişkenleri tanımlamada kullanıldığı için ekrana dolar yazdırmak isterseniz önüne ters slash eklemeniz lazım*/

$sadun = "oniki";

$oniki = 12;

echo "bu kod ne yapar ? $$sadun"; /*iki kere dolar işareti kullanılması durumunda birinci doların içindeki string değişken olarak alınır. Bu durumda ekrana 12 yazdırılır*/

echo "bu kod ne yapar ? ${${sadun}}"; /*Bu durumda gene ekrana 12 yazdırılır. Zaman zaman değişkenleri bu şekilde kullanmak gerekebiliyor fakat bu tarz kullanımlar esasında pek sağlıklı bi yapınızın olmadığının da göstergesidir.*/

?>

Özel karakterler

\n yeni satır

\t tab boşluğu

\\ ters slash

\$ dolar işareti

PHP yazılım biçiminde temel dikkat edilmesi gereken başlıklar bunlar sayılır. Bundan sonra gelecek olan "Değişken Tipleri" ve "Operatör ve Döngüler" başlıkları ile mantıksal işlemlere başlaycağız.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...