AÖF Soru Bankası

Web Sunucu ProgramlamaÜnite 3 Özeti

Temel Kavramlar: Değişkenler, Sabitler, İfade ve Operatörler,

BİL206U-WEB SUNUCU PROGRAMLAMA

Ünite 3: Temel Kavramlar: Değişkenler, Sabitler, İfade ve Operatörler,

Diziler ve Şart İfadeleri

Giriş

Programlamada da problemin çözülmesi için aracı bir dile ihtiyaç vardır ve bu dil çoğu zaman tanımlanmış standartlar ve kuralları kapsamaktadır. Bu bölümde PHP programlama diline ait değişken ve sabitler, operatörler, diziler ve şart ifadelerinin yanı sıra değişkenlerin ve sabitlerin özellikleri ile yazımında dikkat edilmesi gereken kurallar örnekler üzerinden açıklanarak veri türleri hakkında bilgi verilecektir.

Değişkenler ve Sabitler

Değişken, çalışma zamanında verileri depolayan bir bellek konumudur. Bir değişkenin kapsamı, görünürlüğünü belirler. Bir PHP global değişkeni, bir uygulamadaki tüm komut dosyalarına erişilebilir. Yerel bir değişkene yalnızca tanımlandığı komut dosyası tarafından erişilebilir. Değişkenler, verileri depolamak ve gerektiğinde depolanan verileri sağlamak için kullanılır. Sabitler ise, değeri çalışma zamanında değiştirilemeyen veri türüdür.

Değişkenler

Programlamada verilerin depolanması değişkenler aracılığı ile gerçekleştirilir. Değişkenler bir programda birden çok kez kullanıldığı için “bilgi depolayan kap” olarak adlandırılabilir. Programlar çalıştıkları zaman kullanmış oldukları değerlerin bir bellekte depolanması gerekmektedir. Bu değerler kimi zaman program tarafından üretilen çıktılar olabileceği gibi kimi zaman da kullanıcılar tarafından girilebilir. Bir programın çalışması sürecinde değişkenler dinamik olarak değişebilmektedir.

Değişkenler program içinde her türden bilgiyi taşırlar. Bir değişkenin tanımlanmasında; değişkenin adı ve değişkenin depo edildiği verinin türü oldukça önemlidir. PHP programlama dilinde, değişkenlerin öncesinde tanımlanmasına gerek yoktur. Çünkü PHP programlama dili, diğer güçlü-çeşitlendirilmiş (strongly-typed languages) diller sınıfına girmemektedir. Değişkenlerin her biri $ işareti ile başlar ve isimlendirilirken bazı kurallar vardır:

• Değişken isimlendirilmelerinde Türkçe karakterler (ç, Ç, ğ, Ğ, ı, İ, ö, Ö, ü, Ü) kullanılmaz. • Değişken isimlendirmelerinde alfa-nümerik karakterler (a-z, A-Z, 0-9) ve alt tire işareti ( _ ) kullanılabilir. • Değişken isimlendirmeleri bir harf veya alt tire işareti ( _ ) ile başlayabilir. Ancak sayılarla başlamaz. • Değişken isimlendirmelerinde boşluk kullanılmaz. Tanımlamada boşluk gerektiren kelimeler arasına alt tire işareti ( _ ) konur (kullanici_adi) veya büyük-küçük harf tanımlaması (kullaniciAdi) şeklinde gerçekleştirilebilir.

Değişken Tanımlama, Atama ve Ekrana Yazdırma

Bir değişken dolar işareti ($) ile başlar ve ardından değişkenin adı olan bir tanımlayıcı gelir. Değişkenler için

yaygın bir adlandırma kuralı, ilki hariç her kelimenin başlangıçta büyük harfle yazılmasıdır. Bir değişkene eşittir işareti veya atama operatörü (=) kullanılarak bir değer atanabilir. Değişken daha sonra tanımlanır veya başlatılır. PHP programlama dilinde bir değişkenin tanımlanması ve değer atamasında aşağıdaki yapı kullanılır:

$degiskenAdi= değer;

Değişken adları büyük/küçük harfe duyarlıdır. PHP’deki isimler alt çizgi karakterleri ve sayıları içerebilir, ancak bir sayı ile başlayamaz. PHP’deki isimler boşluk veya özel karakter içeremez ve ayrılmış anahtar kelime olamaz.

Veri Türleri

PHP programlama dili diğer diğer güçlü-çeşitlendirilmiş (strongly-typed languages) diller sınıfından farklı olarak daha esnek yazılmış (loosly) bir programlama dili olduğundan değişkenlerin öncesinde tanımlanması söz konusu değildir. Bu durum bir değişkenin, saklayabileceği veri türünün belirtilmemesi ile veri türünün kendisine atanan değeri tutarak otomatik olarak değişmesi anlamına gelmektedir. Bununla birlikte bir değişkenin değeri, kullanıldığı bağlama bağlı olarak farklı şekilde de değerlendirilmektedir.

PHP Değişken Türleri:

• int Tamsayı • float Kayan-noktalı sayı • string Metin • bool Boole değeri • array Değerlerin toplanması • object Kullanıcı tanımlı veri türü • resource Dış Kaynak • calleble İşlev veya yöntem • mixed Herhangi bir tür • null Boş/Değer yok

Sabitler

Sabitler, değişkenlere çok benzemektedirler. Değişkenlerin aksine sabitlerin taşıdıkları değerler, programın çalışması süresince aynı kalır. “Define” ile tanımlanırlar. Sabitler, isimlerinin başında $ simgesi taşımazlar.

İfadeler ve Operatörler

Bir ifade (expression), bir değer üretmek için değerlendirilebilen bir PHP kodu parçasıdır. En basit ifadeler değişmez değerler ve değişkenlerdir. Değişmez bir değer kendini değerlendirirken, bir değişken ise değişkende depolanan değeri değerlendirir. Basit ifadeler ve operatörler kullanılarak daha karmaşık ifadeler oluşturulabilir. Bir operatör bazı değerleri alır ve değerleri bir araya getirme vb. işlemler yapar. Operatörler bazen noktalama işaretleri olarak yazılırlar. Örneğin matematikten aşina olduğumuz “+” ve “-” işaretleri birer operatör örneğidir. Bazı operatörler işlenenlerini değiştirirken; pek çok operatör ise değiştirmez. Operatörler 5’e ayrılır:


• Aritmetik operatörler: Dört temel aritmetik işlemi içermektedir. Bölme işleminde kalanı elde etmek için kullanılan operatör modül operatörü (%)dür. • Değer atama operatörleri: İkinci grup, atama operatörleridir, en önemlisi, bir değişkene değer atayan atama operatörünün (=) kendisidir. • Karşılaştırma operatörleri: Karşılaştırma işleçleri iki değeri karşılaştırır veya doğru ya da yanlış döndürür. Esas olarak, doğru veya yanlış olarak değerlendirilen ifadeler olan koşulları belirtmek için kullanılırlar. • Mantıksal operatörler: Mantıksal işleçler, karmaşık mantıksal ifadeler oluşturmada yollar sağlar. Mantıksal operatörler, işlenenlerini Boole değerleri olarak ele alır ve bir Boole değeri döndürür. Operatörlerin hem noktalama hem de İngilizce versiyonları vardır (|| ve veya aynı operatördür). Mantıksal operatörler şunlardır: o Ve (&&, AND) o Veya ((||, OR) o XOR (XOR) o Logical Negation (!) • Bitsel operatörler: İşlenenlerinin ikili gösterimine göre hareket eder. Her işlenen önce değerin ikili temsiline dönüştürülür. Tüm bitsel operatörler, metinlerin yanı sıra sayılar üzerinde de çalışır, ancak farklı uzunluklardaki metin işlenenlerini ele alma biçimleri farklıdır.

Operandlar

PHP’deki çoğu operatör ikili operatörlerdir; iki işleneni (veya ifadeyi) daha karmaşık tek bir ifadede birleştirirler. PHP ayrıca, tek bir ifadeyi daha karmaşık bir ifadeye dönüştüren bir dizi tekli operatörü de destekler.

Operatör Önceliği

Bir ifadedeki operatörlerin değerlendirildiği sıra, onların göreli önceliğine bağlıdır.

Operatör İlişkilendirme

İlişkisellik (associativity), aynı öncelik sırasına sahip operatörlerin değerlendirildiği sırayı tanımlar. Bölme ve çarpma operatörleri aynı önceliğe sahiptir, ancak ifadenin sonucu önce hangi işlemi yaptığımıza bağlıdır. Bölme ve çarpma operatörleri sol ilişkiseldir. Bu, belirsizlik durumlarında operatörlerin soldan sağa doğru değerlendirildiği anlamına gelir.

Diziler

Bir dizi, değeri tek bir değişkende saklamada oldukça önemli işleve sahiptir. Dizilerin kullanılması tanımlanması gereken değişken sayısının artışını engeller. Bir dizi, konuma (sıfır ilk konum olmak üzere bir sayı) veya ilişkisel dizin adı verilen tanımlayıcı bir ad (bir metin) ile tanımlanabilecek değerler grubunu içerir.

Sayısal Diziler

Dizideki her ögeyi sayısal bir dizinle saklar. Dizi yapıcısı kullanılarak bir dizi oluşturulur. Bu yapıcı, dizinin

ögelerine atanan değerlerin bir listesini alır. array() yapısı bir dizi oluşturur. Dizi sıfırla başlar.

İlişkisel Diziler

İlişkili dizilerde anahtar, öğeye sayı yerine bir ad veren sayısal bir dizin yerine ilişkili bir metin olmasıdır. Diziyi oluştururken, hangi anahtarın hangi değeri ifade ettiğini söylemek için çift ok operatörü (=>) kullanılır. => operatörünün kullanılması indisle değeri doğrudan ilişkilendirmeye yardımcıdır.

Karışık Diziler

PHP, ilişkisel ve sayısal diziler arasında hiçbir ayrım yapmaz ve böylece her birinin ögeleri aynı dizide birleştirilebilir.

Çok Boyutlu Diziler

Çok boyutlu dizi, diğer dizileri içeren bir dizidir. İki boyutlu diziler, her bir satırı tek boyutlu diziden oluşan matris tipindeki yapılardan oluşmaktadır. İki boyutlu dizilerde, her satır aynı türdeki verilerden oluşmalıdır. Dizinin tamamının aynı türden verilerden oluşma zorunluluğu yoktur.

Şart İfadeleri

Koşullu ifadeler, farklı koşullara dayalı olarak farklı kod bloklarını yürütmek için kullanılır. Bu koşullar PHP programlama dilinin yapısında zaman zaman sıçramalı veya döngüsel olabilmektedir. Her ne kadar PHP programlama dilinin yapısı yukarıdan aşağıya doğru doğrusal bir şekilde olsa da şart ifadeleri ve döngüler bu yapının kendi içerisinde değişmesine neden olabilir.

if Deyimi

if ifadesi yalnızca parantez içindeki koşul doğru olarak değerlendirilirse yürütülür. Koşul, karşılaştırma ve mantıksal operatörlerden herhangi birini içerebilir. Diğer koşulları test etmek için if ifadesi herhangi bir sayıda elseif cümlesi ile genişletilebilir. Her ek koşul, yalnızca önceki tüm koşullar yanlışsa test edilir. Yalnızca tek bir ifadenin koşullu olarak yürütülmesi gerekiyorsa, küme parantezleri dışarıda bırakılabilir. Ancak, kod okunabilirliğini iyileştirdiklerinden, bunları dâhil etmek iyi bir uygulama olarak kabul edilir. Aşağıda başka bir program örneği ve ekran çıktısı yer almaktadır.

Switch Deyimi

Switch ifadesi, bir tamsayı, kayan nokta (ondalıklı sayı) veya metin ile bir dizi büyük/küçük harf etiketi arasındaki eşitliği kontrol eder. Daha sonra yürütmeyi eşleşen duruma geçirir. İfade, herhangi bir sayıda vaka cümlesi içerebilir ve diğer tüm vakaları ele almak için varsayılan bir etiketle bitebilir. Her büyük harf etiketinden sonraki ifadelerin küme parantezleri ile çevrelenmediğine dikkat edilmelidir. Bunun yerine, ifadeler anahtardan çıkmak için break anahtar sözcüğüyle biter.

Bu ünitenin sorularını uygulamada çözŞıklar, doğru cevaplar ve süreli sınav modu AÖF Soru Bankası uygulamasında