-
1.
+3
panpalar yazinin bazi yerleri sozlugumuzun supersonik kodlari yuzunden (esit esittir gibi yerleri) gozukmuyor, bu sebepten yazida anlam veremediginiz bir kisim varsa suraya da bakabilirsiniz: https://goo.gl/Y3zqFg
normalde daha hizli ilerleyecektim ama hic bilmeyen adama anlatir sekilde anlatirsam uzun vadede daha fazla kisi yararlanabilir diye baya temelden almaya karar verdim panpalar. dunku konumuz veri turlueri idi, bugun birkac konuyu bir arada gecirmeyi planliyorum.
gecen yazilarda palir kuldur bahsettigim ekrana biseyler yazdirma konusuna hizlica deginecegim.
echo ve print
php de ekrana biseyler yazdirmak icin "echo" ve "print" kullanilir.
birbirlerine cok benzerler, sonucta ikisi de ayni isi yaparlar ama aralarinda fark vardir.
echo metodu echo , ... seklinde kullanilabilir, bir degerdondurmez.
print metodu ise print seklinde kullanilir, ekrana yazma islemini yapar ve sonuc olarak her zaman 1 degerini dondurur.
print bi fonksiyon gibi calisarak geriye islemin basari durumunu boolean olarak dondurur. bu islem yuzunden echo ile aralarinda milisaniyenin milisaniyesi kadar da olsa islem suresi farki vardir.
echo ve print kullanimi su sekildedir:
degiskenler
degiskenlerle alakali da aslinda alttan alttan bilgiyi verdiydim onceki yazilarda falan ama burada da bi aciklik getirelim tam manasiyla.
daha onceki yazilardan birinde (zaten 3 tane yazi var amk) bahsetmistim $ ile baslayip devamina yazilan kelime degiskenin adi olur.
degiskenlerin kapsamlari
php de uc farkli degisken kapsami var
- local
- global
- static
bunlarin kullanimini fonksiyonlara gectimmi ayrintili anlaticam. normal degiskenden farkli degil fakat tanimlandigi yere gore global veya local oluyorlar.
bir de global keyword umuz var bu degiskenlerle ilgili. local olacak degiskeni basinda 'global' ifadesiyle tanimlarsak o degisken global degiskenler gibi davranabiliyor.
bir degiskeni cagirdigimiz zaman aslinda $GLOBALS['degisken adi'] degiskenini cagirmis oluyoruz, yani
echo $x ile echo $GLOBALS['x'] yani degeri donduruyor.
static ise, normalde local degiskenler misal bir fonksiyonun icinde basliyor ve o fonksiyonun icinden cikmiyorlar, o fonksiyonun isi bittiginde o degiskenin de isi bitiyor ve artik bir deger tutmuyor o degisken.
fonksiyon her calistiginda o degiskenin degeri sifirlanmasin istiyorsak static ifadesi ile beraber tanimliyoruz.
bunlarin orneklerini fonksiyonlara geldigimiz zaman yapacagim.
sabitler
php ve bircok programlama dilinde 'sabit' deger tanimlama dalgasi var panpalar. bunlara sabit denir, (ingiliccesi constants, kons, konstant falan diye cumle icinde kullaniyoz muhabbetini ederken)
kullanimi: define(adi, degeri, case-insensitive)
- adi: bildigin adi iste, sabiti nasil cagircaz
- degeri: sabiti cagirdigimizda bize ne donecek
- case-insensitive: sabit in adinin buyuk kucuk harfe duyarli olup olmamasi durumunu belirtir. varsayilan degeri false.
sabit degerler globaldir, yani bir kere tanimladiginizda onu kodun herhangi bir yerinde kullanabilirsiniz.
operatorler
Simdi operatorlere gecelim mubarek kardeslerim,
aritmetik operatorler
aritmetik operatorlerimiz var, bilumum matematiksel islemler icin kullancaz. c ve unix in mucidi dennis ritchie, unlu bilgisayar bilimcisi ken thompson, linuks core un basini ceken adam linus torvalds, tacsiz kral restinp3ace bu aritmetik operatorleri kullandi ve kullaniyor! bilin istedim.
operator: +
adi: toplama
ornek: $x + $y
sonuc: $x ve $y toplami
operator: -
adi: cikarma
ornek: $x - $y
sonuc: $x ve $y nin farki
operator: *
adi: carpma
ornek: $x * $y
sonuc: $x ve $y nin carpimi
operator: /
adi: bolme
ornek: $x / $y
sonuc: $x in $y degiskenine bolumu
operator: %
adi: mod
kullanimi: %x % $y
sonuc: $x in $y ye bolunmesinden kalan sayi.
atama operatorleri
hani degisken tanimliyoruz, arada esittir koyuyoruz ya. heh o mesela atama operatoru.
atama: x = y
sunun gibi: x = y
aciklama: soldaki degiskenin degerini sagdaki degere esitler.
atama: x += y
sunun gibi: x = x + y
atama: x -= y
sunun gibi: x = x - y
atama: x *= y
sunun gibi: x = x * y
atama: x /= y
sunun gibi: x = x / y
atama: x %= y
sunun gibi: x = x % y
ayri ayri aciklamadim zaten aritmetik islemlerle alakali
karsilastirma operatorleri
mantiksal operatorler
string operatorleri
başlık yok! burası bom boş!