23 Haziran 2016 Perşembe

Php'de Operatörler

Operatörler
Operatörler kullanıldıkları dile, atama, aritmetik iĢlemler
ve karıĢılatırma gibi yetenekler kazandıran sembollerdir.
PHP dilinde en çok kullanılan operatör ―=‖ operatörüdür.
Değer atamak için kullanılır. PHP getirdiği yazım
kolaylıklarından biriside hem atama hem iĢlem
yapılabilmesidir. Örneğin:
print ( $Fiyat = 1000 ) ;
ifadesinde olduğu gibi, bir fonksiyonun içinde de hem
atama iĢlemi yapılabilir; hem de iĢlem yürütülebilir.
PHP'nin aritmetik, birleĢik-atama (combined assigment),
birleĢtirme, karĢılaĢtırma ve mantıksal sınama
operatörleri vardır.
Aritmetik Operatörler:
+ Toplama 6+5 = 11
- Çıkartma 6-5 = 1
/ Bölme 6/5 = 1.2
* Çarpma 6*5 = 30
% Kalan
(Modulus)
6%5 = 1
Aritmetik iĢlemleri gerçek sayılarla yaptığımız gibi,
tuttuğu değer sayı olan değiĢkenlerle de yapabiliriz.
Daha önce, PHP'de değiĢken tanımlarken ve bunlara
değer atarken sayı olan değiĢkenleri tırnak iĢareti
kullanmadan, alfanümerik değiĢkenleri ise tırnak içinde
yazdığımızı hatırlayacaksınız. Bu, geleneksel hale gelmiĢ
olan bir programcılık alıĢkanlığıdır. PHP, tırnak
kullanmasanız da bir değiĢkenin sayı olup olmadığını
anlar; daha sonra bu değiĢkenlerle aritmetik iĢlem
yapabilir. PHP ayrıca rakamla baĢlayan alfanümerik
değiĢkenleri sayı olarak kullanmaya kalktığınızda, bu
değerin baĢındaki bütün rakamları sayı olarak kabul
eder. PHP açısından harf veya iĢaretle baĢlayan
alfanümerik değiĢkenlerin sayı olarak değeri sıfırdır.
Örnek:
$a = 6;
$b = "22/A"
print ($a + $b)
sonuç olarak 28'i verecektir; veya
$a = 6;
$b = "a/22"
print ($a + $b)
sonuç olarak 6 çıkacaktır. Bu küçük örnekler, PHP ile
program yazarken hangi değiĢkenin ne sonuç vermesi
gerektiğini dikkatle düĢünmek zorunda olduğunuzu
göstermiĢtir sanırım. Bir kiĢinin maaĢı ile baba adını
toplamak istemezsiniz doğal olarak ama bununla birlikte
elimizde bir kiĢinin adı ve soyadı ayrı değiĢkenler halinde
ise, bunları birbirine ekleyerek (concatenation) ortaya
yeni bir alfanümerik değiĢken çıkartabiliriz:
<?php $ad = "Ġbrahim Halil";
$soyad = "Kutluay";
$adi_soyadi = $ad . " " . $soyad;
print ("<br>");
print ($adi_soyadi);
print ($ad . "'nın soyadı " . $soyad . "'dir.")
?>
Gördüğünüz gibi alfanümerik değiĢkenleri ekleyerek yeni
bir değiĢken elde edebilmenin yanında, değiĢkenlerin
değerlerinide birbirlerinin sonuna eklememizde mümkün.
Son satırdaki araya konula nokta iĢaretiyle (.) bu iĢlem
yapılmaktadır. Bu iĢlemciyle sadece değiĢkenlerin
değerlerini değil sıradan metin değerlerinide birbirine
ekleyebiliriz:
<?php print ("Ġlim Çinde bile olsa; " . "..." . "arayıp
bulunuz..! ")
?>
BirleĢik Atama Operatörleri
Bu kodlama sistemi PHP diline C dilinde alınmıĢ kodlama
tekniklerindendir. Normalde bir çok dilde örneğin A
değiĢkeninin değerini 10 artır denildiğinde A=A+10
Ģeklinde kodlanır. ġüphesiz bu kod PHP içindede
geçerlidir. Ancak istenirse aĢağıdaki tabloda görüldüğü
gibi birleĢik-atama iĢlemide yapılabilir.
İşlem
ci
Örnek Anlamı
+= $a += 25 $a = $a + 25
-= $a -= 25 $a = $a – 25
/= $a /=25 $a = $a / 25
*= $a *= 25 $a = $a * 25
%= $a %= 25 $a = $a % 25
.= $a .=
"metin"
$a = $a"
metin"
Bu iĢlemi zihnimizde, "A değiĢkeninin mevcut değerine
25 ekle, çıkan sonucu A değiĢkenin yeni değeri yap!"
Ģeklinde canlandırabiliriz.
Bir Arttırmak veya Azaltmak için
Değerleri sadece 1 arttırmak veya azaltmak için PHP, bir
kolaylık sağlar:
$sayi++ veya ++$sayi: $sayi‘nin değerini 1
arttırır;
$sayi-- veya --$sayi: $sayi‘nin değerini 1
eksiltir.
++ veya -- iĢaretinin değiĢken adından önce veya sonra
olmasına göre artırma yada eksiltme iĢleminin önceliği
değiĢir. ĠĢaretler değiĢkenin adından önce ise PHP önce
değiĢkenin değerini bir arttırır veya eksiltir, sonra bu
yeni değeri iĢleme katar; iĢaretler değiĢken adından
sonra ise, PHP değiĢkenin o andaki değerini iĢleme
kadar, sonra değeri bir arttırır veya eksiltir.
Kontrol Blokları ve KarĢılatırma Operatörleri
Kontrol blokları programlama dilleri açısından olmazsa
olmaz ögelerdendir. Çünkü bir programın koĢullara
uygun olara değiĢik iĢler yapabilmesi için kod
yazılabilmesini sağlarlar. PHP dilinde kontrol blokları
oluĢturmak için if ve switch kullanılır. Ancak if ve switch
için olmazsa olmazĢarn aĢında karĢılaĢtırma operatörleri
gelir. ġimdi bunları görelim.
KarĢılaĢtırma Operatörleri
PHP'nin karĢılaĢtırma yapması için kullandığımız
iĢlemciler iĢlem iĢaretinin sağı ve solundaki değerleri
veya değiĢkenlerin değerlerini iĢaretin belirttiği
karĢılaĢtırmayı yaptıktan (öncelik sırasına göre) sonra
ortaya ya doğru (true) ya da yanlıĢ (false) sonucunu
çıkartırlar. Söz gelimi, değeri 26 olan değiĢkenin 25'ten
büyük olup olmadığını sınarsak, sonuç doğru; 25'ten
küçük olup olmadığını sınarsak sonuç yanlıĢ çıkacaktır.
PHP'nin karĢılaĢtırma iĢlemcileri Ģunlardır:
İşlemci Örnek Örnek $a=26 ise:
== eĢitse $a ==
25
YanlıĢ/False
!= eĢit değilse $a != 25 Doğru/True
=== aynı ise $a ===
25
YanlıĢ/False
> büyükse $a > 25 Doğuru/True
< küçükse $a < 25 YanlıĢ/False
<= küçükse veya
eĢitse
$a <=
25
YanlıĢ/False
>= büyükse veya
eĢitse
$a >=
25
Doğru/True
PHP'nin karĢılaĢtırma iĢlemcileri hem tam ve ondalık sayı
türü değerlerle, hem de alfanümerik değerlerle
kullanılabilir. KarĢılatırma ve kontrol ifadeleri hem zaman
bu kadar basit olmaz. Örneğin bir kiĢinin ehliyet
alabilmesi için hem Trafik, hem Motor hemde Ġlkyardım
derslerinin tümünden 70 veya üzerinde not alması
gerektiği gibi.
Motor 70 - Trafik 70 – Ġlkyardım 69 = kalır
(yanlıĢ/false)
Motor 79 - Trafik 80 – Ġlkyardım 90 = geçer
(doğru/true)
PHP dilinde iki veya daha fazla koĢulu birden kontrol
edeceksek araya aĢağıdaki tablodaki operatörlerden
birisini koymak gerekir.
PHP'de bu karĢılaĢtırmayı iki grubun arasına koyduğumuz
iĢaretlerle yaparız. Operatörlerin iĢlem önceliği kuralı
burada geçerlidir.
İşlemci Adı Anlamı Örnek
|| Veya sol veya sağ
doğru
Doğru ||
yanlıĢ =
doğru
Or Veya sol veya sağ
doğru
Doğru ||
yanlıĢ =
doğru
&& Ve sol ve sağ
doğru
Doğru ||
yanlıĢ =
yanlıĢ
And Ve sol ve sağ
doğru
Doğru ||
yanlıĢ =
yanlıĢ
Xor ġartlıveya
Sadece sol
veya sağ doğru
Doğru ||
yanlıĢ =
doğru
! Değil sol veya sağ
yanlıĢ
Doğru ||
yanlıĢ =
doğru
Dikkatinizi çektiyse "veya" ve "ve" sınamaları için tabloda
iki operatör bulunmaktadır. Ve için (and ve &&), Veya
için (or ve ||). Yukarıda operatörlerin önceliğinden
bahsetmiĢtik. Bu çiftlerin amacı önceliği değiĢtirmektir.
Bu konuyu biraz açmamız gerek. PHP‘ de en yüksek
öncelik her zaman ―!‖ operatörünündür. Daha sonra ise
parantez içine alınmıĢ ifadeler gelir. Çünkü öncelikle bu
iĢaretin değeri hesaplanmalıdır ki kontrol edilecek
değerler ortaya çıksın. Öte yandan mantığa göre ―and‖
operatörü ―or‖ operatöründen önceliklidir. Yani bir
cümlede hem ―and‖ hem ―or‖ kullanılmıĢ ise önce ―and‖
kontrol edilerek ifade iĢlenmeye baĢlanır. Bunun
önceliğini değiĢtirmek için ―or‖ yerine ―||‖ kullanılır ise bu
defa ―||‖ ifadesi ―and‖ operatöründen önce kontrol
edilecektir.
Burası biraz karıĢık gibi gelsede iĢlemcinin mantığı bu
yöndedir. Onun için en uygun Ģey birden fazla koĢul
olduğu zaman hangi koĢul önce iĢlenecekse o koĢulu
parantez için almaktır. Parantez açma kapama sırası çok
önemlidir. O bakımdan geliĢmiĢ bir editör iĢinizi
kolaylaĢtırabilir. Çünkü günümüz editörleri parantezleri
uygun sırada ayrı renklerde bile gösterebilir.
ĠĢlem Önceliği Sıralaması
2. ++ ve --
3. / * %
4. + -
5. < <= => >
6. == === | =
7. &&
8. ||
9. = += -= /= %= .=
10. and
11. xor
12. or

Hiç yorum yok:

Yorum Gönder